您的位置:首页 > 编程语言 > Java开发

MyEclipse中JavaMail冲突问题

2016-01-02 21:31 423 查看
MyEclipse中的JavaEE5中的mail包中只有接口,而没有实现,所以不能使用

会抛出:java.lang.NoClassDefFoundError: com/sun/mail/util/BEncoderStream异常

当导入mail.jar后,会抛出下面异常:java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream

这是因为MyEclipse下有javamail的接口,并且mail.jar中也有javamail的接口,所以会出现冲突。

而MyEclipse中的JavaEE5是为了编译环境而存在的,真正发布到Tomcat环境后,就不需要MyEclipse的JavaEE5了。

但是,如果你非要在WEB项目下,运行main()方法,这就会出现问题。mail.jar中的类与MyEclipseEE5中的类冲突。

如果你发布到Tomcat下,因为Tomcat自己有JavaEE的jar包,所以MyEclipse的JavaEE5不会发到Tomcat下,所以

Tomcat运行不会抛出异常。

进入下面路径

D:\MyEclipse10\Common\plugins\com.genuitec.eclipse.j2eedt.core_10.0.0.me201110301321\data\libraryset\EE_5

找到javaee.jar,把这个jar包中与javax.mail相关的东西都删除。

再把mail.jar和activation.jar导入到项目中,这就不会出错了。

==================================
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javamail myeclipse