java.lang.ClassNotFoundException: com.sun.mail.util.MessageRemovedIOException
java.lang.ClassNotFoundException: com.sun.mail.util.MessageRemovedIOException
将应用程序从 jdk6 升级到 jdk8 时,我们在 Message msg = new MimeMessage(session);
上收到以下错误
SEVERE: Servlet.service() for servlet [default] in context with path [] threw exception [java.lang.reflect.InvocationTargetException] with root cause
java.lang.ClassNotFoundException: com.sun.mail.util.MessageRemovedIOException
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1333)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1167)
有没有人在升级 java 应用程序时遇到过相同或相关的问题?
编辑:相同的代码适用于 java6.
您的类路径中混合了来自不同版本 JavaMail 的 JavaMail 类。您使用的是什么应用程序服务器,您的 Web 应用程序的 lib 目录中有什么?
我用过这个并且有效:
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.5.5</version>
</dependency>
我遇到了类似的问题。我正在使用 Maven 依赖项来
配置外部库。
问题已通过从新的 maven 存储库切换来解决
对于 Java 邮件 Api,到旧的 Maven 存储库
新存储库(引发异常):
javax.mail
javax.mail-api
1.5.5
旧存储库(工作正常):
javax.mail
邮件
1.4
我不知道为什么使用旧存储库有效,而使用新存储库却不行。如果有人能澄清这一点就太好了。
将应用程序从 jdk6 升级到 jdk8 时,我们在 Message msg = new MimeMessage(session);
SEVERE: Servlet.service() for servlet [default] in context with path [] threw exception [java.lang.reflect.InvocationTargetException] with root cause
java.lang.ClassNotFoundException: com.sun.mail.util.MessageRemovedIOException
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1333)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1167)
有没有人在升级 java 应用程序时遇到过相同或相关的问题?
编辑:相同的代码适用于 java6.
您的类路径中混合了来自不同版本 JavaMail 的 JavaMail 类。您使用的是什么应用程序服务器,您的 Web 应用程序的 lib 目录中有什么?
我用过这个并且有效:
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.5.5</version>
</dependency>
我遇到了类似的问题。我正在使用 Maven 依赖项来 配置外部库。
问题已通过从新的 maven 存储库切换来解决 对于 Java 邮件 Api,到旧的 Maven 存储库
新存储库(引发异常): javax.mail javax.mail-api 1.5.5
旧存储库(工作正常): javax.mail 邮件 1.4
我不知道为什么使用旧存储库有效,而使用新存储库却不行。如果有人能澄清这一点就太好了。