我有一个JavaMail的应用,在Android/Eclipse环境中工作正常,但投在NetBeans以下(移植Android应用到桌面):如何将NetBeans引导类路径设置为包含mail.jar?
javax.activation.UnsupportedDataTypeException: 没有对象DCH的MIME类型 多/混合 边界= “---- = _ Part_0_7749469.1284737984291”
我发现了一个workaround here,但无法弄清楚如何在NetBeans应用它。 我已经将mail.jar添加到NetBeans编译时库,但不知道如何将NetBeans引导类路径设置为包含mail.jar,如变通方法中的建议。 从http://www.opensubscriber.com/message/[email protected]/7570201.html
JAF使用上下文类加载器 负载类。如果失败,它将使用加载JAF 类的类加载器 。
当JAF封装与应用 的JAF类 由同一个类加载器加载的 其他应用类,所以即使 上下文类加载器没有设置JAF 可以找到其他应用程序 类。
当JAF是JDK的一部分时,JAF 类由系统 加载类加载器。如果没有上下文 设置类加载器,JAF没有 的方法来找到合适的类 加载器来加载应用程序类。
(由于JavaMail是打包带 应用中,JavaMail的类被 一样对待应用 类。)
一种解决方法是设置引导类 路径包括的mail.jar。
如何将NetBeans引导类路径设置为包含mail.jar?
对不起。没有帮助。正如我在原始问题中所说的,我已经将mail.jar添加到NetBeans编译时库(以及activation.jar和additional.jar)中,但似乎存在上下文类加载器的一些问题:http ://www.opensubscriber.com/message/[email protected]/7570201.html。我尝试了你的程序(我之前使用过一种稍微不同的方法),但是似乎只是再次添加库。上面提出的解决方法是将引导类路径设置为包含mail.jar,但是我再也不知道该怎么做。 – jacknad 2010-09-17 17:41:38
我通过删除activation.jar来摆脱错误。根据http://www.oracle.com/technetwork/java/index-138643.html'除非你使用Java SE 6,否则你还需要JavaBeans Activation Framework(JAF)扩展,它提供了javax.activation包。我们建议您使用最新版本JAF的1.1.1版本。 JAF包含在Java SE 6中。您的过程是正确的。我需要我的android环境中的activation.jar(和additional.jar)。谢谢。 – jacknad 2010-09-20 18:32:09