我用以前的邮箱发送邮件,就能正常发送,测试过了想注册个新邮箱,改成新新邮箱就报错String smtpHost = "smtp.126.com";
<!--这里用以前的邮箱信息就能发,换成新注册的就不能发了-->
String sendName = "yalink";
String password = "d_yalink#356";
String from = "[email protected]";Exception in thread "main" javax.mail.AuthenticationFailedException: failed to connect
at javax.mail.Service.connect(Service.java:322)
at javax.mail.Service.connect(Service.java:172)
at javax.mail.Service.connect(Service.java:121)
at javax.mail.Transport.send0(Transport.java:190)
at javax.mail.Transport.send(Transport.java:120)
at mail.tool.SendMail.sendOut(SendMail.java:243)
at mail.tool.SendMail.doSend(SendMail.java:204)
at mail.tool.SendMailTest.main(SendMailTest.java:27)
不明白什么原因???????

解决方案 »

  1.   

    AuthenticationFailedException认证错误!
      

  2.   

    1、不要使用你刚刚注册过的邮箱在程序中发邮件,如果你的163邮箱是刚注册不久,那你就不要使用“smtp.163.com”。因为你发不出去。刚注册的邮箱是不会给你这种权限的,也就是你不能通过验证。要使用你经常用的邮箱,而且时间比较长的。
    2、另一个问题就是mailInfo.setMailServerHost("smtp.163.com");与mailInfo.setFromAddress("[email protected]");这两句话。即如果你使用163smtp服务器,那么发送邮件地址就必须用163的邮箱,如果不的话,是不会发送成功的。