gpt4 book ai didi

java - 必须先发出 STARTTLS 命令。使用 Java 和 Google Apps 发送电子邮件

转载 作者:IT老高 更新时间:2023-10-28 20:56:50 26 4
gpt4 key购买 nike

我正在尝试使用 Bill the Lizard's code使用 Google Apps 发送电子邮件。我收到此错误:

Exception in thread "main" javax.mail.SendFailedException: Sending failed;
nested exception is:
javax.mail.MessagingException: 530 5.7.0 Must issue a STARTTLS command first. f3sm9277120nfh.74

at javax.mail.Transport.send0(Transport.java:219)
at javax.mail.Transport.send(Transport.java:81)
at SendMailUsingAuthentication.postMail(SendMailUsingAuthentication.java:81)
at SendMailUsingAuthentication.main(SendMailUsingAuthentication.java:44)

Bill 的代码包含下一行,似乎与错误有关:

   props.put("mail.smtp.starttls.enable","true");

但是,它没有帮助。

这些是我的导入语句:

import java.util.Properties; 
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

有人知道这个错误吗?

最佳答案

我发现了问题。以前我使用 j2ee.jar 导入 javax.mail。

我从类路径中删除了 j2ee.jar 并下载了 JavaMail 1.4.1 并放入我的类路径两个 jar ,smtp.jar 和 mailapi.jar。我现在使用 smtps 而不是 smtp

Transport transport = session.getTransport("smtps");            

现在 Bill the Lizard 的代码可以工作了。

关于java - 必须先发出 STARTTLS 命令。使用 Java 和 Google Apps 发送电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/386083/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com