当前位置: 首页 > 知识库问答 >
问题:

Spring启动-无法连接到SMTP主机:SMTP。gmail。通讯,端口:25,应答:421

东郭瀚玥
2023-03-14

我正在使用gmail smtp主机t通过spring boot和JavaMail Sender发送邮件:

我的邮件属性:

 spring.mail.host = smtp.gmail.com
 spring.mail.username = XXX@gmail.com
 spring.mail.password = XXX

 spring.mail.properties.mail.smtp.auth = true
 spring.mail.properties.mail.smtp.socketFactory.port = 465
 spring.mail.properties.mail.smtp.starttls.enable = true
 spring.mail.properties.mail.smtp.socketFactory.class = javax.net.ssl.SSLSocketFactory
 spring.mail.properties.mail.smtp.socketFactory.fallback = false

获取错误:

Failed message 1: javax.mail.MessagingException: Could not connect to SMTP host: smtp.9business.fr, port: 25, response: 421] with root cause

即使我用的是465端口,他为什么指向25端口?

共有3个答案

许正平
2023-03-14

在属性文件中禁用mail.smtp.starttls.required为false。

Spring邮政财产。邮政smtp。斯塔特尔斯。启用=真正的Spring。邮政财产。邮政smtp。斯塔特尔斯。必需=错误

屈晨
2023-03-14

事实上,我发现了什么问题,我应该使用它们中的一个是我服务器的端口,另一个是gmail服务器的端口:

spring.mail.properties.mail.smtp.socketFactory.port = 25
mail.smtp.port= 465
岳研
2023-03-14

我不知道你从哪里弄来的。要配置的更常见的Spring Boot属性可以在这里找到:

http://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html

所以您可能应该使用spring.mail.portspring.mail命名空间中可用的属性是:

host
port
username
password
defaultEncoding (default: "UTF-8")

但是,如果您正在创建自己的JavaMailSender,则设置SMTP端口的属性为mail.smtp.port。我将JavaMailSender设置为bean,如下所示:

@Value(value = "${mail.smtp.host}")
private String smtpHost;

@Value(value = "${mail.smtp.port}")
private String smtpPort;

@Bean
public JavaMailSender mailSender() {
    JavaMailSenderImpl sender = new JavaMailSenderImpl();

    Properties p = new Properties();
    p.setProperty("mail.smtp.auth", "false");
    p.setProperty("mail.smtp.host", smtpHost);
    p.setProperty("mail.smtp.port", smtpPort);
    sender.setJavaMailProperties(p);

    return sender;
}
 类似资料:
  • 我正在获取javax.mail.MessagingException:无法连接到SMTP主机:主机名端口:25响应:552 有时邮件发送成功。但有时我会遇到例外。 我不清楚为什么会发生这种情况。如果有什么事情出了问题,那么就不应该发送邮件。但例外情况有时还是会发生。 javax.mail.messagingException:无法连接到SMTP主机:mail.mydomain.com,端口:25,

  • SMTP错误:无法连接到SMTP主机。无法发送消息。 邮件程序错误:SMTP错误:无法连接到SMTP主机。 我似乎找不到让PHPMailer在CentOS下工作的方法。邮件在XAMPP的Windows下工作正常,但我总是在Linux下遇到这个错误。 SMTP服务器是一个在端口25上侦听的Lotus Domino,CentOS机器根本没有防火墙,奇怪的是,即使是mail()也不能工作。它不返回任何内

  • 我需要使用Gmail作为SMTP服务器从我的应用程序发送电子邮件。这是我的邮件连接器类,我在一个单独的属性文件中设置了值 属性: 然后我实现了一个邮件发送者类,名为“GroupEmail.class” 毕竟,我在需要触发要发送的电子邮件的地方调用了“GroupEmail.class”。 我在localhost使用Tomcat v8服务器,当应用程序工作时,我得到了以下异常。

  • 这是我用来发送电子邮件的代码: javax.mail.MessagingException:无法连接到SMTP主机:SMTP.gmail.com,端口:465; 嵌套异常为: java.net.connectException:连接被拒绝 在com.sun.mail.SMTP.smtpransport.openserver(smtpransport.java:1961) 在com.sun.mail

  • 在发送邮件时,我遇到了这个错误 java.lang.RuntimeException:javax.mail.SendFailedException:发送失败;嵌套异常为:类javax.mail.MessagingException:无法连接到SMTP主机:SMTP.gmail.com,端口:465,响应:-1 我的代码是:

  • 问题内容: 以下是我发送邮件的代码: 但是当我运行代码时,它给了我以下异常。 当我ping到它时,它给我的答复没有任何问题。我在用 请帮我解决这个问题。 问题答案: 这是这两行让我感到困扰的问题: 并添加了这一行: 删除并添加以上代码行后,它可以正常工作。