JavaMail Gmail 问题。 “准备启动 TLS”然后失败

2024-05-19

    mailServerProperties = System.getProperties();
    mailServerProperties.put("mail.smtp.port", "587");
    mailServerProperties.put("mail.smtp.auth", "true");
    mailServerProperties.put("mail.smtp.ssl.trust", "*");
    mailServerProperties.put("mail.smtp.starttls.enable", "true");
    mailServerProperties.put("mail.debug", "true");

    getMailSession = Session.getDefaultInstance(mailServerProperties, null);
    generateMailMessage = new MimeMessage(getMailSession);
    generateMailMessage.addRecipient(Message.RecipientType.TO, new InternetAddress("[email protected] /cdn-cgi/l/email-protection"));
    generateMailMessage.addRecipient(Message.RecipientType.CC, new InternetAddress("[email protected] /cdn-cgi/l/email-protection"));
    generateMailMessage.setSubject("Greetings");
    String emailBody = "Test email";
    generateMailMessage.setContent(emailBody, "text/html");
    System.out.println("Mail Session has been created successfully..");

    Transport transport = getMailSession.getTransport("smtp");

    transport.connect("smtp.gmail.com", 587, "user", "password");
    transport.sendMessage(generateMailMessage, generateMailMessage.getAllRecipients());
    transport.close();

我还在我的密钥库中安装了 gmail smtp 证书 openssl s_client -connect smtp.gmail.com:465

DEBUG: getProvider() returning    javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Oracle]
DEBUG SMTP: useEhlo true, useAuth true
DEBUG SMTP: trying to connect to host "smtp.gmail.com", port 587, isSSL false
220 smtp.gmail.com ESMTP i80sm10888185wmf.11 - gsmtp
DEBUG SMTP: connected to host "smtp.gmail.com", port: 587

EHLO uk-lon01-mws07
250-smtp.gmail.com at your service, [2.220.210.180]
250-SIZE 35882577
250-8BITMIME
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-CHUNKING
250 SMTPUTF8
DEBUG SMTP: Found extension "SIZE", arg "35882577"
DEBUG SMTP: Found extension "8BITMIME", arg ""
DEBUG SMTP: Found extension "STARTTLS", arg ""
DEBUG SMTP: Found extension "ENHANCEDSTATUSCODES", arg ""
DEBUG SMTP: Found extension "PIPELINING", arg ""
DEBUG SMTP: Found extension "CHUNKING", arg ""
DEBUG SMTP: Found extension "SMTPUTF8", arg ""
STARTTLS
220 2.0.0 Ready to start TLS (BOMBS OUT AT THIS POINT)
Exception in thread "main" javax.mail.MessagingException: Could not convert socket     to TLS;
  nested exception is:
javax.net.ssl.SSLHandshakeException: Remote host closed connection during     handshake
at com.sun.mail.smtp.SMTPTransport.startTLS(SMTPTransport.java:2046)
at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:711)
at javax.mail.Service.connect(Service.java:366)
at com.lawrenceadams.Mail.generateAndSendEmail(Mail.java:50)
at com.lawrenceadams.Mail.main(Mail.java:16)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at     sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
Caused by: javax.net.ssl.SSLHandshakeException: Remote host closed connection     during handshake
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:992)
at     sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387)
at com.sun.mail.util.SocketFetcher.configureSSLSocket(SocketFetcher.java:598)
at com.sun.mail.util.SocketFetcher.startTLS(SocketFetcher.java:525)
at com.sun.mail.smtp.SMTPTransport.startTLS(SMTPTransport.java:2041)
... 9 more
 Caused by: java.io.EOFException: SSL peer shut down incorrectly
at sun.security.ssl.InputRecord.read(InputRecord.java:505)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973)
... 15 more

有人可以帮忙吗?在过去的几个小时里一直在努力解决这个问题。


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JavaMail Gmail 问题。 “准备启动 TLS”然后失败 的相关文章

随机推荐