天天看点

javax.mail.AuthenticationFailedException异常的处理

在Java中,通过程序发送QQ邮件时,报:javax.mail.AuthenticationFailedException

这是身份认证的错误,这个时候,需要从以下两方面着手:

一、检查QQ邮箱或者别的邮箱是否开通了pop3/smtp服务,这个错误是认证失败,所以很有可能是没有开通pop3/smtp服务,我在这里犯了两个错误,一是mail.password写的是邮箱登录密码,应该写为开通pop3/smtp服务时的验证码;二是没有开通pop3/smtp服务

final Properties props = new Properties();

            props.put("mail.smtp.auth", "true");
            props.put("mail.smtp.host", "smtp.qq.com");
            //你自己的邮箱
            props.put("mail.user", "[email protected]"); 
            //你开启pop3/smtp时的验证码
            props.put("mail.password", "xxxxx");
            props.put("mail.smtp.port", "25");
            props.put("mail.smtp.starttls.enable", "true");
           

二、在用户名、密码都没有问题以及pop3/smtp服务也开通的情况下,还是报这个错误,先登录一下邮箱,测试是否能正常发送邮件。

有时候邮箱发送邮件过于频繁,可能被网站认为是恶意软件攻击,这个时候就需要定期去他们的网站登录一下,处理一下

三、还要注意一点,配置的时候一定要有:mail.smtp.auth=true