Java邮件:“网络无法访问”

时间:2014-11-12 10:39:20

标签: java email

尝试使用Transport.send()(Win7,64位)发送邮件会出现网络错误:

java.net.SocketException: Network is unreachable: connect
    at java.net.DualStackPlainSocketImpl.connect0(Native Method)
    at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:80)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:369)

此网站上有关于此的各种其他问题,建议将java.net.preferIPv4Stack设置为true。除了我,它似乎适用于所有人! 如果我ping服务器,它会正常响应。

我还试图在一个小的测试程序中找出问题,这个程序完美地发送了邮件,但在“真实的”邮件中。应用程序,它不起作用。我还在邮件会话中使用了setDebug(true),但调试输出对于测试程序和“真实”是相同的。应用程序 - 这是真正的'失败的地方。应用

我验证了java.net设置,只需在“真实”邮件中发送邮件之前插入这些行即可。应用程式:

System.out.println( "Using IP4 stack: " + System.getProperty( "java.net.preferIPv4Stack" ) );
System.out.println( "Using IP6 addresses : " + System.getProperty( "java.net.preferIPv6Addresses" ) );

分别产生truefalse。所以问题不在于这些设置之一。是否设置java.net.preferIPv6Addresses没有任何区别。

@Gimby:是的。而且,如果我使用普通邮件客户端向同一个SMTP服务器发送邮件,它就能完美运行。 @SME_Dev:SMTPTransport,在应用程序和测试程序中。

我想知道,其他网络设置可能与此相关吗?可能会出现什么问题?

0 个答案:

没有答案