使用javax.mail发送电子邮件,使用gmail但与其他人一起收到错误

时间:2016-08-10 14:45:56

标签: java email smtp javamail

我尝试了this page上建议的代码,它在gmail中运行得非常好,如示例所示。我专门使用了SSL身份验证示例。

使用相同的代码,但更改凭据和SMTP主机,我收到以下错误:

 javax.mail.SendFailedException: Invalid Addresses;   nested exception
 is:    com.sun.mail.smtp.SMTPAddressFailedException: 504 5.5.2
 <me@MY-PC>: Sender address rejected: need fully-qualified
 address

    at com.sun.mail.smtp.SMTPTransport.rcptTo(SMTPTransport.java:1996)
    at
 com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:1240)
    at javax.mail.Transport.send0(Transport.java:255)   at
 javax.mail.Transport.send(Transport.java:124)  at
 EmailUtil.sendEmail(EmailUtil.java:49)     at
 EmailSSL.main(EmailSSL.java:56) Caused by:
 com.sun.mail.smtp.SMTPAddressFailedException: 504 5.5.2
 <me@MY-PC>: Sender address rejected: need fully-qualified
 address

    at com.sun.mail.smtp.SMTPTransport.rcptTo(SMTPTransport.java:1896)
    ... 5 more

发生错误的是,发件人的地址现在是我的本地PC的地址,即使代码中指定的地址不是。

为什么完全相同的代码适用于gmail而不适用于其他主机?

感谢阅读! 文森特

1 个答案:

答案 0 :(得分:0)

不同的服务器有不同的要求。

Gmail help page可能有用。

另请参阅JavaMail FAQ entry for Gmail