使用Apache Commons电子邮件库在Java中发送电子邮件时出错

时间:2015-01-22 16:04:23

标签: java authentication apache-commons-email

我试图使用Apache Commons库发送电子邮件。但它给我一个错误说

  

" setAuthenticator(Authenticator)的类型是错误的"在email.setAuthenticator函数中。

这是我的代码。我不知道为什么会出现这个错误。

public static void sendSimpleMail() throws Exception {
    Email email = new SimpleEmail();
    email.setSmtpPort(587);
    email.setAuthenticator(new DefaultAuthenticator("me@gmail.com","my gmail password"));
    email.setDebug(false);
    email.setHostName("smtp.gmail.com");
    email.setFrom("me@gmail.com");
    email.setSubject("Hi");
    email.setMsg("This is a test mail ... :-)");
    email.addTo("you@gmail.com");
    email.setTLS(true);
    email.send();
    System.out.println("Mail sent!");
}

1 个答案:

答案 0 :(得分:0)

您可以尝试使用不同的方法直接接收用户名和密码的身份验证数据,然后通过commons-email在内部处理Authenticator:

email.setAuthentication("me@gmail.com","my gmail password")