我有一个奇怪的问题,我正在构建jar文件,我想知道是否有人可以将我指向任何手册或知识库文章,这将解释它... 无论如何,我的应用程序引用的外部iText-2.0.8.jar位于与我的输出jar相同的目录中: OUT_DIR: - my.jar - iText-2.0.8.jar main在my.jar类是com.company.Main和每当我试图运行jar如果通过-jar命令启动会抛出错误,但是-cp可以正常工作
java -cp "my.jar;iText-2.0.8.jar" com.company.Main
我的应用程序运行良好。但只要我试图运行:
java -jar my.jar
我得到的NoClassDefFoundError上课从iText的 - 2.0.8.jar 这里是my.jar的清单:
Manifest-Version: 1.0
Main-Class: com.company.Main
Class-Path: iText-2.0.8.jar
Name: rabbitmq-client
Specification-Title: AMQP
Specification-Version: 0.9.1
Specification-Vendor: AMQP Working Group (www.amqp.org)
Implementation-Title: RabbitMQ
Implementation-Version: 3.1.3
Implementation-Vendor: Rabbit Technologies Ltd. (www.rabbitmq.com)
这可能与iText jar也可以运行(它有它自己的主类)?另一方面,NoClassDefFoundError清楚地表明类路径错误...
你是怎么产生这个清单?手动或通过一些构建工具? –
我正在使用Intellij IDEA和一个大型Ant build.xml文件。 清单部分如下所示: –
user3185031