Java Mail Api抛出MessagingException:异常读取响应

问题描述 投票:-2回答:1

我正在尝试使用localhost和Java Mail Api发送邮件,但是在发送邮件时会生成异常

Exception in thread "main" java.lang.reflect.InvocationTargetException
    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:498)
    at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:47)
    at org.springframework.boot.loader.Launcher.launch(Launcher.java:86)
    at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)
    at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)
Caused by: javax.mail.MessagingException: Exception reading response;
  nested exception is:
    java.net.SocketTimeoutException: Read timed out
    at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:2202)
    at com.sun.mail.smtp.SMTPTransport.close(SMTPTransport.java:1212)
    at javax.mail.Transport.send0(Transport.java:257)
    at javax.mail.Transport.send(Transport.java:124)
    at com.monoplus.mcd.JavaMailApi.sendMail(JavaMailApi.java:87)
    at com.monoplus.mcd.SendMailMain.main(SendMailMain.java:18)
    ... 8 more
Caused by: java.net.SocketTimeoutException: Read timed out
    at java.net.SocketInputStream.socketRead0(Native Method)
    at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
    at java.net.SocketInputStream.read(SocketInputStream.java:171)
    at java.net.SocketInputStream.read(SocketInputStream.java:141)
    at com.sun.mail.util.TraceInputStream.read(TraceInputStream.java:124)
    at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
    at java.io.BufferedInputStream.read(BufferedInputStream.java:265)
    at com.sun.mail.util.LineInputStream.readLine(LineInputStream.java:89)
    at com.sun.mail.smtp.SMTPTransport.readServerResponse(SMTPTransport.java:2182)
    ... 13 more

我的Postfix正在运行,并且它的配置是默认值。

此外,端口25处于侦听状态

而且我可以使用telnet localhost 25连接

源代码位于https://bitbucket.org/saavedrah_/javamail/src/master/

谢谢

java javamail
1个回答
0
投票
在我的build.gradle中,我引用了这两个库

implementation 'javax.mail:javax.mail-api:1.6.2' implementation 'javax.mail:mail:1.5.0-b01'

删除javax.mail-api引用时,发送邮件没有任何问题。

谢谢

© www.soinside.com 2019 - 2024. All rights reserved.