几天前我遇到了一个问题,当我使用 Javamail 使用我们的本地邮件服务器发送电子邮件时,出现“权限被拒绝:连接”的情况。作为引用,可以在这里找到:JavaMail API to iMail -- java.net.SocketException: Permission denied: connect 。解决方案是将“-Djava.net.preferIPv4Stack=true”添加到我的项目的 VM 选项中。
在构建项目并尝试在 NetBeans 外部运行 .jar 文件后,我收到相同的错误代码。该项目在 NetBeans IDE 中按预期运行。
我在这里、Google 上搜索了这些问题,并阅读了一些 Javamail 常见问题解答。老实说,我真的不知道我在寻找什么,并且认为我只是错过了一些东西。
我使用的是 NetBeans 7.2、Java 7 和 Windows 7。我的项目的 dist 文件夹包含 .jar 文件,dist\lib 文件夹包含 mail.jar。
关于为什么我会再次收到该错误有什么想法吗?再次感谢您提供的任何帮助/信息。
最佳答案
你的程序运行得怎么样?
如果使用“java -jar myprog.jar”运行它,请使用“java -Djava.net.preferIPv4Stack=tru -jar myprog.jar”。
如果通过双击 jar 文件或类似文件来运行它,则可能需要通过添加 System.setProperty("java.net.preferIPv4Stack", "true"); 在代码中设置属性
关于Javamail 权限被拒绝 : Connect after build,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12936319/