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导入到项目中,这就不会出错了。
==================================
相关文章
- 解决Spring开发中@ConfigurationProperties注解无法找到类和bean名称冲突问题
- VideoJS 与 Framework7 中 fastclick 冲突问题
- 关于docker中的rabbitmq启动容器不成功,docker ps也找不到,重启报容器冲突的问题解决
- 解决caffe 编译过程中protobuf版本冲突的问题
- MyEclipse右键new菜单项的设置 及 Eclipse中各种文件不能保存中文的问题
- MyEclipse中关于Java类库存放的路径问题
- myeclipse中git冲突的问题解决
- maven中类冲突,包依赖NoClassDefFoundError以及方法NoSuchMethodError的问题定位以及解决
- 解决Eclipse中git的Windows和Linux换行符冲突问题
- MyEclipse或者Eclipse控制台(Console)中的中文输出乱码问题