Play Mailer 服务无法发送电子邮件

Play Mailer Service not able to send email

我在使用 play 框架发送电子邮件时遇到问题 mailer plugin. I tried turning on the secure setting on the Gmail account as per suggested in 但它仍然无法发送我的电子邮件。

我在application.conf中的设置:

play.mailer {
  host="smtp.gmail.com"
  port=587
  ssl=yes
  tls=no
  user="l************ay@gmail.com"
  password="****************"
  debug=yes
  timeout=60
  connectiontimeout=60
  mock=no
}

我尝试连接其他端口以及 465,正如它在同一问题的其他一些答案中所建议的那样。我发送电子邮件的代码是这样的:

String cid = "1234";
Email email = new Email();
email.setSubject("Verify Account Please");
email.setFrom("l************ay@gmail.com");
email.addTo("l************ay@gmail.com");

email.setBodyHtml("<html><body><p>An <b>html</b> message with cid <img src=\"cid:" + cid + "\"></p></body></html>");
mailerClient.send(email);

但我仍然遇到以下异常:

以下是我收到的错误:

org.apache.commons.mail.EmailException: Sending the email to the following server failed : smtp.gmail.com:465

我的 Play Framework 版本是 2.5

好的,我想出了解决问题的方法。问题不是我的代码,而是我的防病毒软件 avast Antivirus。我的防病毒保护阻止了 smtp 的所有调用。我禁用了它,一切正常。我在 TLS 电子邮件上使用了 gmail。我在application.conf中的最终配置是:

play.mailer {
  host = "smtp.gmail.com"
  port = 587
  ssl = no
  tls = yes
  user = "*********@gmail.com"
  password = "**********"
  debug = no
}

我还有一个 discussion on play-mailer github 论坛,其中一位开发人员(我想)经常提供帮助和帮助。我也在那里发布了我的代码。所以遇到麻烦的人也可以得到帮助:)。