我创建了一个简单的 Java 程序(1 个包含 main() 的 java 文件),并且我已将所有 Jar 文件包含在与 .class 文件相同的目录中。它给出了 NoClassDefFoundError 消息。
我已经尝试更新 Classpath 以指向该目录,并且我还设置了“-cp”。建议它与 .class 文件位于同一目录中。但是,程序仍然说它找不到类 def。
关于我应该做什么的任何想法?
我创建了一个简单的 Java 程序(1 个包含 main() 的 java 文件),并且我已将所有 Jar 文件包含在与 .class 文件相同的目录中。它给出了 NoClassDefFoundError 消息。
我已经尝试更新 Classpath 以指向该目录,并且我还设置了“-cp”。建议它与 .class 文件位于同一目录中。但是,程序仍然说它找不到类 def。
关于我应该做什么的任何想法?
添加一个文件夹会告诉 java 在该文件夹中查找 .class 文件。您不能通过文件夹名称引用 .jar 文件...每个 .jar 文件的路径必须明确列在 CLASS_PATH 中。
当你尝试从命令行运行一个类时,一个 NoClassDefFound 异常通常意味着你的类路径有问题。
您已经明确定义了类路径。您可以通过几种方式做到这一点,但以下方式最不容易出错:
打开命令外壳并执行以下操作:
1.) 设置类路径 = {类文件的路径};{jar 的路径}
2.) java com.example.mainclass
注意:即使您的类路径和 jar 路径相同,您也需要明确指定它们。
注意:如果您有多个 jar,请将它们放在一个文件夹中,例如 lib 并将其添加到类路径中,例如:{path}/lib/* 这将包括所有 jar,否则您必须单独指定它们。
参考资料: https ://javarevisited.blogspot.com/2011/01/how-classpath-work-in-java.html
导入以下包:
Import java.lang.NoClassDefFoundError;