我正在使用Apache Commons电子邮件库发送电子邮件,但无法通过GMail SMTP服务器发送电子邮件。 任何人都可以提供适用于GMail SMTP服务器和其他服务器的示例代码吗?
我正在使用以下无效的代码:
String[] recipients = {"receiver@gmail.com"}; SimpleEmail email = new SimpleEmail(); email.setHostName("smtp.gmail.com"); email.setAuthentication("sender@gmail.com", "mypasswd"); email.setDebug(true); email.setSmtpPort(465); for (int i = 0; i < recipients.length; i++) { email.addTo(recipients[i]); } email.setFrom("sender@gmail.com", "Me"); email.setSubject("Test message"); email.setMsg("This is a simple test of commons-email"); email.send();
将电子邮件发送到GMail SMTP服务器需要身份验证和SSL。用户名和密码非常简单。确保设置了以下属性以启用身份验证和SSL,并且该属性应该可以正常工作。
mail.smtp.auth=true mail.smtp.starttls.enable=true
在示例代码中,将以下内容添加到已启用的TLS。
对于<1.3版本的API版本,请使用: email.setTSL(true); 对于版本=> 1.3,该方法已弃用,而应使用:email.setStartTLSEnabled(true);
email.setTSL(true);
email.setStartTLSEnabled(true);