【发布时间】:2015-12-30 23:04:29
【问题描述】:
我有 2 个文件,Project.jar 和 JavaFile.java,保存在名为 Project 的文件夹中。我使用 Mac 的终端成功编译了它们,如下所示:
javac -cp Project.jar JavaFile.java
但是,在尝试运行应该接收 2 个参数的程序后,使用
java -cp Project.jar JavaFile argument1 argument2
我收到以下错误消息:
Exception in thread "main" java.lang.NoClassDefFoundError: JavaFile
Caused by: java.lang.ClassNotFoundException: JavaFile
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
我对 Java 很陌生,如果能提供任何帮助,我们将不胜感激。
谢谢!
【问题讨论】:
-
您是否已经尝试过使用“Project.jar”?
-
我不相信这就是你正在运行的。请提供重现此行为的完整示例。
-
忽略我下面的回答,让我们再尝试一件事;您是否也尝试将当前目录添加到类路径? IE。 java -cp .:Program.jar JavaFile arg1 arg2 ?
-
@kwoxer 抱歉,不确定您的意思?
-
@SotiriosDelimanolis 我又试了一次,得到的信息略有不同,请参阅上面的原始帖子。
标签: java macos jar terminal noclassdeffounderror