Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util/MailLogger解决方法

版权声明:转载请注明原始链接 https://blog.csdn.net/sswqzx/article/details/84351468

今天用MailUitl工具类发送邮件报如下错误。。。

错误提示:

Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util/MailLogger
	at javax.mail.Session.initLogger(Session.java:230)
	at javax.mail.Session.<init>(Session.java:214)
	at javax.mail.Session.getInstance(Session.java:251)
	at com.ssm01.util.MailUtil.sendMail(MailUtil.java:42)
	at com.ssm01.util.MailUtil.main(MailUtil.java:69)
Caused by: java.lang.ClassNotFoundException: com.sun.mail.util.MailLogger
	at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
	... 5 more

解决方案:

原来的pom.xml mail的依赖

 <dependency>
            <groupId>javax.mail</groupId>
            <artifactId>javax.mail-api</artifactId>
            <version>1.5.6</version>
        </dependency>

改为:

       <dependency>
            <groupId>javax.mail</groupId>
            <artifactId>mail</artifactId>
            <version>1.4.7</version>
        </dependency>

或改为: 

        <dependency>
            <groupId>com.sun.mail</groupId>
            <artifactId>javax.mail</artifactId>
            <version>1.6.0</version>
        </dependency>

或改为:

        <dependency>
            <groupId>javax.mail</groupId>
            <artifactId>javax.mail-api</artifactId>
            <version>1.5.5</version>
        </dependency>
        <dependency>
            <groupId>com.sun.mail</groupId>
            <artifactId>javax.mail</artifactId>
            <version>1.5.5</version>
        </dependency>

可能原因:

com.sun.mail.util。MailLogger是JavaMail API的一部分。它已经包含在EE环境中(这就是为什么您可以在您的活动服务器上使用它),但是它没有包含在SE环境中。

JavaMail API是可选的包,可与Java SE平台一起使用,Java EE平台中也包含了JavaMail API。

 javax。mail-api工件只适合于编译。您实际上需要运行代码,因此需要JavaMail的完整实现。

参考文章:https://stackoverflow.com/questions/16807758/java-lang-noclassdeffounderror-com-sun-mail-util-maillogger-for-junit-test-case
 

猜你喜欢

转载自blog.csdn.net/sswqzx/article/details/84351468