繁体   English   中英

eclipse导出jar java.lang.NoClassDefFoundError问题

[英]eclipse export jar java.lang.NoClassDefFoundError problem

使用eclipse进行编译和运行时没有问题,但是当使用这些设置将其导出为jar时, Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: gnu/io/SerialPortEventListenerException in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: gnu/io/SerialPortEventListener

jar导出器没有导出我的扩展jar库?

替代文字替代文字

Exceptions JavaDoc中的这句话有助于理解出了什么问题:

当前正在编译的类在编译时就存在搜索到的类定义,但是无法再找到该定义。

您已经在eclipse上构建了应用程序而没有任何错误。 所以 Eclipse的类路径定义是不够好,编译所有类。

现在,您导出,跑出来日食和遇到错误。 导出的应用程序不再使用eclipse项目的classpath定义。 当前版本不包括包含gnu.io.SerialPortEventListener的库。

通用解决方案是:修复导出的jar的类路径问题。

这可能是一个依赖关系问题,但是请不要混淆ClassNotFoundException和NoClassDefFoundError 基本上,这就是说初始化以下内容时存在问题: gnu/io/SerialPortEventListener作为起点,我将检查该类是否存在错误。

我已经通过使用fatjar解决了

您也可以考虑使用名为WinRun4J的开源工具。

可从http://winrun4j.sourceforge.net/获得

我发现此方法简单易用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM