1

我运行以下命令:

C:\Projects\java -cp ./dependency.jar -jar ./dist/main.jar
Exception in thread "main" java.lang.NoClassDefFoundError: MyException
Caused by: java.lang.ClassNotFoundException: MyException
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: Main. Program will exit.

MyException 在dependency.jar 中。我还尝试将 -cp 替换为 -classpath。我做错了什么?

4

2 回答 2

5

如果-cp您使用-jar. 如果您在类路径上需要额外的 jar 文件,您应该在 Manifest 中指定,main.jar如下所示:

Class-Path: dependency.jar

(然后您可以使用 . 运行您的程序java -jar main.jar。)

相关问题:

于 2012-07-20T11:07:42.977 回答
0

您是否尝试过在 Windows 环境变量 CLASSPATH 中指定类路径?

指定您的环境变量 CLASSPATH 并输入您的 JAVA_HOME\lib 和(所有类的路径)的值,并通过包含(点或句点符号)来包含当前目录。

于 2012-07-20T11:10:33.460 回答