我有一个Java程序,它使用javax.mail发送SMTP消息。 这个程序在Linux上运行FINE,我想事先强调一下。 当我在Windows 7 x64机箱上尝试使用相同的代码时,出现此错误:
send failed, exception: javax.mail.MessagingException: Could not connect to SMTP host: smtp.west.cox.net, port: 25; nested exception is: java.net.SocketException: Network is unreachable: connect
这里是代码:
Session session = Session.getInstance(props, null); MimeMessage msg = new MimeMessage(session); msg.setFrom(); msg.setRecipients(Message.RecipientType.TO, props.getProperty("mail.to", "[email protected]")); msg.setSubject(mySubject); msg.setSentDate(new Date()); msg.setContent(sBuf.toString(), "text/html"); Transport.send(msg);
这个程序几乎使用默认设置。 它可以在同一networking上的另一个框上正常工作。 它使用我用于我的常规邮件客户端,相同的设置工作正常。 这个Windows盒子上有一些阻止SMTP的东西,但是只能用于Java。
我安装了Symantec(Norton)360。 closures它并没有什么区别,但重新启动到安全模式(禁用几乎所有的东西)都可以使程序工作并发送邮件。
所以,回顾一下:
在我再花一天时间拆卸和卸载/重新安装之前,我想知道有没有人有任何build议来解决这个问题?
“无法连接到SMTP主机”和“networking无法访问”表明,根本原因是您的Windows机器无法连接到smtp.west.cox.net机器。 这可能是由于几个原因之一: