- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在发布之前,我在互联网上阅读了很多内容和建议的问题,但找不到任何适合我的内容。
在过去的 5 天里,我一直在寻找解决此问题的方法,但一直找不到。
相关代码:
private void sendMail(){
final String username = "foo";
final String password = "bar";
Properties props = System.getProperties();
props.put("mail.smtp.starttls.enable", true); // added this line
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.smtp.user", username);
props.put("mail.smtp.password", password);
props.put("mail.smtp.port", "587");
props.put("mail.smtp.auth", true);
props.put("mail.debug", "true");
Session session = Session.getInstance(props,null);
MimeMessage message = new MimeMessage(session);
System.out.println("Port: "+session.getProperty("mail.smtp.port"));
// Create the email addresses involved
try {
InternetAddress from = new InternetAddress(username);
message.setSubject("Yes we can");
message.setFrom(from);
message.addRecipients(Message.RecipientType.TO, InternetAddress.parse("ardilgulez@gmail.com"));
// Create a multi-part to combine the parts
Multipart multipart = new MimeMultipart("alternative");
// Create your text message part
BodyPart messageBodyPart = new MimeBodyPart();
String htmlMessage = "Our html text";
messageBodyPart.setContent(htmlMessage, "text/html");
// Add html part to multi part
multipart.addBodyPart(messageBodyPart);
// Associate multi-part with message
message.setContent(multipart);
// Send message
Transport transport = session.getTransport("smtp");
transport.connect("smtp.gmail.com", username, password);
System.out.println("Transport: "+transport.toString());
transport.sendMessage(message, message.getAllRecipients());
} catch (MessagingException e) {
e.printStackTrace();
}
}
邮件调试日志文件:
调试:JavaMail 版本 1.4.1……调试:!anyLoaded
调试:未加载资源:/META-INF/javamail.address.map
调试:未加载文件:C:\Java\JDK16~1.0_4\jre\lib\javamail.address.map
DEBUG: java.io.FileNotFoundException: C:\Java\JDK16~1.0_4\jre\lib\javamail.address.map (系统找不到指定的文件)
端口:587
调试:getProvider() 返回 javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]
调试 SMTP:useEhlo true,useAuth false
调试 SMTP:尝试连接到主机“smtp.gmail.com”,端口 587,isSSL false220 smtp.gmail.com ESMTP t2sm2978726wme.0 - gsmtp
调试 SMTP:已连接到主机“smtp.gmail.com”,端口:587
EHLO 福
250-smtp.gmail.com 为您服务,[212.156.0.126]
250-尺寸 35882577
250-8BITMIME
250-STARTTLS
250 个增强状态代码
250-流水线
250-分块
250 SMTPUTF8
调试 SMTP:找到扩展名“SIZE”,arg“35882577”
调试 SMTP:找到扩展名“8BITMIME”,arg“”
调试 SMTP:找到扩展名“STARTTLS”,arg“”
调试 SMTP:找到扩展名“ENHANCEDSTATUSCODES”,arg“”
调试 SMTP:找到扩展名“PIPELINING”,arg“”
调试 SMTP:找到扩展名“CHUNKING”,arg“”
调试 SMTP:找到扩展名“SMTPUTF8”,arg“”
传输:smtp://foo@smtp.gmail.com
调试 SMTP:use8bit false
邮件来自:
530 5.7.0 必须首先发出 STARTTLS 命令。 t2sm2978726wme.0 - gsmtp
DEBUG SMTP:收到响应代码 530,响应为:530 5.7.0 必须首先发出 STARTTLS 命令。 t2sm2978726wme.0 - gsmtp
最佳答案
因为您使用的是非常旧版本的 JavaMail,所以您需要使用此:
props.put("mail.smtp.starttls.enable", "true");
注意引号。
更好的是,upgrade to a current version .
哦,没有 mail.smtp.password 属性,并且您不需要 mail.smtp.host 和 mail.smtp.user 属性,因为您将它们显式传递给 connect 方法。
关于java - 将 Gmail SMTP 服务器与 JavaMail 结合使用 : Must issue a STARTTLS command first (JavaMail version 1. 4.1),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33523051/
在发布之前,我在互联网上阅读了很多内容和建议的问题,但找不到任何适合我的内容。 有关使用 gmail 的 JavaMail 常见问题解答 Stackoverflow 问题 JavaMail 教程 Go
我正在尝试通过 java 邮件发送电子邮件。它给出了以下异常javax.mail.internet.ParseException: 在 Content-Type string 中,预期的 MIME 类
我想从我的 Gmail 帐户的特定文件夹中获取最近未读的具有特定主题的电子邮件。我正在使用 JavaMail API,如下所示,但它返回 0 个结果。但是,如果我只单独使用 subjectTerm,我
我正在开发一个基于 Spring 的网络应用程序,当用户输入他的电子邮件和密码进行注册时我想验证它们并向他发送电子邮件。我已经使用 java mail api并正确设置gmail smtp。 这是我的
我试图获取我的 Gmail 的所有邮件,但只能获取 250 封。根据 https://javaee.github.io/javamail/FAQ#gmailsettings ,我已经将邮件数量限制设置
我有几封主题为报告 #123:来自测试的“Email_test_856” 的电子邮件。我尝试使用 JavaMail API 根据关键字 Email_test 查找邮件,但它不会过滤掉任何邮件。 这是我
我有一种方法可以发送 HTML 电子邮件和嵌入的图片,以引用我的计算机中的图像,例如 c:/image.gif 该方法效果很好,但我不知道如何添加位于远程计算机中的图像,我知道您的 IP 地址和图像所
这是我的代码,它应该会收到未读消息。然而,它正在返回我收件箱中的最后一条消息。有什么建议吗? import javax.mail.*; import javax.mail.internet.*; im
Javax邮件版本使用1.6.2 手动设置 JavaMailSender 我尝试使用 mail.smtp.timeout 和 mail.smtps.timeout 超时。 而且,我尝试使用字符串和整数
我有以下问题:我的电子邮件客户端使用 Javamail,可以获取电子邮件的所有部分,如发送日期、主题、发件人、收件人等,但我不知道如何获取邮件正文. 我已经尝试过 getContent() 函数,但它
我编写了一个使用 JavaMail API 发送 gmail 的程序。以下是我的代码: import java.util.*; import javax.mail.*; import javax.ac
所以我的问题是关于JavaMail 的。我想向不同的电子邮件地址发送电子邮件,但我希望发件人类似于“noreply”。但是,我似乎无法这样做,因为 JavaMail 需要发送者和接收者都有实际的电子邮
我正在尝试从 Java 应用程序发送电子邮件,但每当我运行在线找到的代码时 here 当我运行代码时,我收到此错误: Exception in thread "main" java.lang.NoCl
所以我遇到了 Javamail 的问题,如果我在邮件中发送附件,正文就会消失。当我不随邮件发送附件时,我只能看到正文。 我的 GMailSender.java: public GMailSender(
我有一个关于 Java Mail 及其如何与流配合使用的问题。在 Java Mail 1.4.1 中,有一个 MimeMessage constructor that accepts a stream
我窃取了这段代码来测试使用 java 发送电子邮件的情况。显然,Javamail 是必需的。由于某种原因,我无法实现 javax.mail。我下载了最新的javamail并将它们放入jdk和jre l
我正在使用 JavaMail 开发一个邮件客户端,它运行良好。现在我希望能够处理传入消息的已读回执。如果传入的邮件 header 包含“Disposition-Notification-To”,我想处
Javamail 在 JUnit 测试和 GlassFish 3.1.2 中工作正常,但在 Tomcat 7.0.41 中不起作用:所有“From” header 均为 NULL!我究竟做错了什么?当
我尝试使用 javamail 连接到电子邮件 - 在非 Android 应用程序中,此代码工作正常: public void perform(View v){ Toast.makeText(g
我必须向多个收件人发送电子邮件。我不希望标题显示完整的收件人列表(即我没有使用“Message.RecipientType.CC”)。如果我使用“Message.RecipientType.BCC”,
我是一名优秀的程序员,十分优秀!