Apache Commons Email 使用 "normal gmail",但不使用 "Gmail for work"?

Apache Commons Email work with "normal gmail", but not "Gmail for work"?

您好,我正在使用以下代码发送电子邮件:

public static void sendEmail(String from, String to, String password) {
    Email email = new SimpleEmail();
    email.setHostName("smtp.googlemail.com");
    email.setSmtpPort(465);
    email.setAuthenticator(new DefaultAuthenticator(from, password));
    email.setSSLOnConnect(true);
    email.setSubject("Plain mail");
    email.setMsg("test");
    email.addTo(to);
    email.send();
}

现在,当我使用我的 "normal" gmail 地址调用此函数时它可以工作:

sendMail("me@gmail.com","friend@gmail.com", "my-password");

所以上面的工作。但是当我尝试迁移到 Gmail for Business 并创建电子邮件地址 "me@mycompany.com"(连接到 Gmail)时,我收到身份验证错误:

sendMail("me@mycompany.com","friend@gmail.com", "my-new-password");

给我这个错误:

javax.mail.AuthenticationFailedException:
<https://accounts.google.com/ContinueSignIn?sarp=1&scc=1&plt=AKgnsb...ZlTLN2wQG4> 
Please log in via your web browser and then try again.

我怀疑我需要在我的 Google 应用程序控制台中设置一些东西,但我什至不确定从哪里开始寻找信息。

有人可以帮忙吗? 谢谢。

这个答案来自一个类似的 SO 问题 here

问题是由于允许安全性较低的应用程序访问您的帐户。点击下面linkhttps://www.google.com/settings/security/lesssecureapps and disable security setting. For more information you can read this here.

祝你好运!