![](/img/trans.png)
[英]java.lang.ClassNotFoundException when running java -jar
[英]java.lang.ClassNotFoundException when running a jar and its dependency is in the same directory
在eclipse上,我编译了一个jar文件。 它在映射的netwrok驱动器上使用多个外部存档。 该项目在Eclipse上完美运行。
我已经将jar +所有的依赖jars复制到某个Solaris目录中。 然后我尝试
java -jar myapp.jar
它给了我以下错误:
Exception in thread "main" java.lang.NoClassDefFoundError: confmng/ConfigManager
错误消息中指定的此类位于已映射的jar之一内,我已将其复制到与主jar相同的目录中。
此外,我从solaris ping了依赖项jar所在的服务器,它是肯定的。
您还可以看到confmng包中的ConfigManager类确实在依赖项jar中:
有什么事吗
谢谢
您必须为依赖项指定类路径,可以在清单类路径中或在带有-classpath
参数的java -jar myapp.jar
命令中指定。
例:
java -classpath dependency1.jar;subfolder/dependency2.jar;myapp.jar package.of.your.main.Class
您还可以在Eclipse中导出Runnable Jar,因此会有一些选项可以处理依赖项,例如选项“将所需的库打包到生成的JAR中”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.