微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 gmail 的 MailR 出现“没有合适的协议”错误

如何解决使用 gmail 的 MailR 出现“没有合适的协议”错误

我正在尝试使用 mailr 从 Gmail 帐户发送一封简单的电子邮件

send.mail(from = "XXXXXX@gmail.com",to = c("YYYYYY@gmail.com"),subject = "Subject of the email",body = "test",html = TRUE,inline = TRUE,smtp = list(host.name = "smtp.gmail.com",port = 465,user.name = "XXXXXX",passwd = "XXXXXX",ssl = TRUE),authenticate = TRUE,send = TRUE)

它给了我以下错误

org.apache.commons.mail.EmailException: Sending the email to the following server Failed : smtp.gmail.com:465
    at org.apache.commons.mail.Email.sendMimeMessage(Email.java:1410)
    at org.apache.commons.mail.Email.send(Email.java:1437)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(UnkNown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(UnkNown Source)
    at java.lang.reflect.Method.invoke(UnkNown Source)
    at RJavaTools.invokeMethod(RJavaTools.java:386)
Caused by: javax.mail.MessagingException: Could not connect to SMTP host: smtp.gmail.com,port: 465;
  nested exception is:
    javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
    at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:2055)
    at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:697)
    at javax.mail.Service.connect(Service.java:386)
    at javax.mail.Service.connect(Service.jaNULL
va:245)
    at javax.mail.Service.connect(Service.java:194)
    at javax.mail.Transport.send0(Transport.java:253)
    at javax.mail.Transport.send(Transport.java:124)
    at org.apache.commons.mail.Email.sendMimeMessage(Email.java:1400)
    ... 6 more
Caused by: javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
    at sun.security.ssl.HandshakeContext.<init>(UnkNown Source)
    at sun.security.ssl.ClientHandshakeContext.<init>(UnkNown Source)
    at sun.security.ssl.TransportContext.kickstart(UnkNown Source)
    at sun.security.ssl.SSLSocketImpl.startHandshake(UnkNown Source)
    at sun.security.ssl.SSLSocketImpl.startHandshake(UnkNown Source)
    at com.sun.mail.util.socketFetcher.configureSSLSocket(SocketFetcher.java:543)
    at com.sun.mail.util.socketFetcher.createSocket(SocketFetcher.java:348)
    at com.sun.mail.util.socketFetcher.getSocket(SocketFetcher.java:215)
    at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:2019)
    ... 13 more
Error: EmailException (Java): Sending the email to the following server Failed : smtp.gmail.com:465

我只是将不安全的应用程序访问权限更改为是,但没有任何反应。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。