我的项目位于mail.jar
文件夹中的lib
。我创建了一个清单文件
Manifest-Version: 1.0
Main-Class: mainfile
Class-Path: lib/mail.jar
然后我使用eclipse导出jar
文件。
我现在尝试以java -jar myjar.jar
执行jar文件,然后收到错误
java.lang.NoClassDefFoundError: javax/mail/Address
任何指针都会非常感激
答案 0 :(得分:3)
mail.jar
。jar
文件,如果不是你必须使用eclipse选项Extract required libraries into generated JAR
,那就是所有必需的jar。 答案 1 :(得分:0)
来自Oracle documentation:
文本文件必须以新行或回车符结束。最后 如果行不以新行结束,则行将无法正确解析 回车。
所以看起来应该是这样的:
Manifest-Version: 1.0
Class-Path: lib/mail.jar
Created-By: 1.7.0_06 (Oracle Corporation)
另外,请确保您的MANIFEST.MF在META-INF文件夹中。
答案 2 :(得分:0)
就我而言,类路径已更新,新的类路径缺少mail.jar和activation.jar
所以链接/复制
进入classpath lib目录可能是其中一个解决方案。