Java类路径问题

时间:2009-07-20 12:20:15

标签: java classpath

我有一个引用Jar文件的Java程序。

Jar文件与.class文件存在于同一目录中但当我尝试从控制台运行程序时,我得到NoClassDefFound错误: - (

或者它从Eclipse运行Ok。

为什么?

2 个答案:

答案 0 :(得分:7)

java程序不会自动在其类路径中包含JAR文件。您可以通过-classpath选项将JAR文件添加到其类路径中。例如:

java -classpath .;yourJarFile.jar your.MainClass
每当运行程序时,Eclipse都会自动添加JAR文件。

注意:-classpath选项在Windows上运行时需要分号(;),否则需要冒号(:)。

答案 1 :(得分:3)

JAR文件不会自动包含在类路径中。您可以向包含要执行的main方法的to JAR文件添加Class-Path条目和Main-Class条目。然后你可以这样执行你的代码:

java -jar yourJarFile.jar

有关详细信息,请参阅JAR File Specification

或在命令行中指定类路径:

java -classpath lib1.jar:lib2.jar:yourJarFile.jar your.MainClass