关于Javaemail发送邮件时遇到的问题
来源:互联网 发布:西安传智java培训 编辑:程序博客网 时间:2024/05/16 12:19
1.导包
首先在网上找到了需要用到的jar包,两个就好。分别是:javax.mail和javax.activation,于是我在POM.xml文件中就导入了依赖。
<dependency>
<groupId>javax.mail</groupId>
<artifactId>javax.mail-api</artifactId>
<version>1.4.7</version>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.1.1</version>
</dependency>
2.测试代码
包倒好了,代码也编辑完成了,下面就开始测试代码。果然,代码报出了异常
1.java.lang.NoClassDefFoundError: com/sun/mail/util/MailLogger
解决方案:MailLogger 是JavaMail的一部分,包含在Java EE环境里面,但是不包含在Java SE环境里面,出现这个错误很大的原因是在SE环境里面测试邮件的发送;javax.mail-api只适合编译,但是如果你实在要运行代码,必须完全实现JavaMail,可以用<groupId>com.sun.mail</groupId><artifactId>javax.mail</artifactId>
将上面javax.mail的包依赖切换为
<dependency >
<groupId >com.sun.mail </groupId >
<artifactId >javax.mail </artifactId >
<version >1.5.4 </version >
</dependency >
就好了
2.之后运行没问题了,可以注册用户,但是报出了另外一个异常
javax.mail.AuthenticationFailedException: 550 User has no permission
解决方案:这是网易邮箱设置的原因,登录发送邮件的网易邮箱(我是用网易邮箱发送邮件的),点击设置,选择客户端授权码,然后开启客户端授权码,OK
3.随后运行,仍然会报出一个异常
javax.mail.AuthenticationFailedException: 535 Error: authentication failed
解决方案:该异常的原因是因为认证不通过导致的,原因是因为刚刚开启了客户端授权码,而在代码中原来设置的网易邮箱的密码还是登陆密码,此时要把登陆密码改成客户端授权码就好了。
OK,运行代码,问题解决了!
- 关于Javaemail发送邮件时遇到的问题
- javaEmail发送邮件问题总结
- SendEmail javaEmail发送邮件
- JAVAEMAIL发送邮件
- android使用javaemail实现发送邮件
- android使用javaemail发送邮件常见错误
- 使用Spring 发送邮件时遇到的问题
- 发送邮件中遇到的问题
- java发送邮件遇到的各种问题
- 发送邮件遇到的问题以及解决办法
- javax.mail发送邮件遇到的问题
- javaemail功能齐全的发送邮件类【能上传附件哦】
- 实现javaEmail邮件发送功能并带有生成的pdf附件
- 关于使用commons-email包测试发送邮件遇到的问题
- 关于邮件发送的乱码问题
- 关于JDK8发送邮件失败的问题
- java发送邮件时遇到的坑
- Spring发送邮件时遇到的错误
- HDU 6039 Gear Up(2017 Multi-University Training Contest 1)
- 算法题:输入aaaabbbcccccc输出a4b3c6。
- 【C++标准模板库笔记1】C++的模板技术
- C++三大特性——多态
- thinkphp3.2 后台获取app前端多个图片上传及参数 的接口写法(upload()函数)
- 关于Javaemail发送邮件时遇到的问题
- selenium server运行报错
- mybatis入门基础(七)----延迟加载
- java排序算法
- Alpine Linux 使用简介
- Linux学习笔记一
- Qwt中的鼠标操作之缩放、平移
- python正则表达式
- Java.lang.NoClassDefFoundError: Failed resolution of: Lkotlin/jvm/internal/Intrinsics解决方法