.jar文件仅在Eclipse中使用时才有效

时间:2012-03-04 20:24:40

标签: java eclipse

我正在使用导入Eclipse的.jar文件,当我使用Eclipse运行应用程序时,工作正常。

但是当我尝试使用命令java ClassName从命令行运行它时,我收到NoClassDefFoundError消息。

.jar文件与我需要运行的主类位于同一目录中。

我尝试在终端

中使用classpath命令
java -classpath pack.jar ClassName

但我得到了同样的错误,但这一次是在主线程中

Exception in thread "main" java.lang.NoClassDefFoundError

为什么我的程序在Eclipse中工作但不能单独工作?

2 个答案:

答案 0 :(得分:4)

我猜您需要使用:java -classpath .:pack.jar ClassName

答案 1 :(得分:0)

如果一个类在编译期间出现但在运行时期间在java类路径中不可用,那么

NoClassDefFoundError将会出现。

它甚至不等于ClassNotFoundException n你不能把它们混淆在一起,所以你需要包含.jar文件的whoe路径,

使用前面介绍的技术来执行此操作,或者如果它是一个想要经常使用而不使用java -classpath ..调用的jar文件,请尝试将该文件导入OS类路径目录。