Java代码在Eclipse中运行良好,但jar文件抛出错误

时间:2014-01-10 15:18:46

标签: java eclipse jar noclassdeffounderror

面临同样问题的人,但代码是用Eclipse编写的。

当我在eclipse中运行它时它工作文件但是在使用jar执行相同时我得到以下错误

Exception in thread "main" java.lang.NoClassDefFoundError: javax/mail/Address
    at RJobsStatus.main(RJobsStatus.java:270)

引起:java.lang.ClassNotFoundException:javax.mail.Address

2 个答案:

答案 0 :(得分:4)

调用jar时,需要将Java Mail库jar添加到类路径中。

更多信息:

答案 1 :(得分:0)

基于NoClassDefFoundError文档 如果Java虚拟机或ClassLoader实例尝试加载类的定义(作为普通方法调用的一部分或作为使用新表达式创建新实例的一部分)并且无法找到类的定义,则抛出该异常。

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

您应该做些事情以确保所有类在运行时都可用。

1确保将Java Mail API添加到类路径中。

2确保使用-classpath选项将类路径传递给java以及javac以在运行时获取这些.jar文件: 例如:

    java -classpath :.:/usr/jdk/mail.jar