很多时候,Java应用程序需要连接到Internet。最常见的示例是在读取XML文件并需要下载其架构时发生的。
我在代理服务器后面。如何设置我的JVM使用代理?
从Java文档(不是 javadoc API)中:
http://download.oracle.com/javase/6/docs/technotes/guides/net/proxies.html
设置JVM标志http.proxyHost以及http.proxyPort在命令行上启动JVM时。这通常是在Shell脚本(在Unix中)或bat文件(在Windows中)中完成的。这是Unix shell脚本的示例:
http.proxyHost
http.proxyPort
JAVA_FLAGS=-Dhttp.proxyHost=10.0.0.100 -Dhttp.proxyPort=8800 java ${JAVA_FLAGS} ...
当使用诸如JBoss或WebLogic之类的容器时,我的解决方案是编辑供应商提供的启动脚本。
许多开发人员熟悉Java API(javadocs),但是很多其他文档却被忽略了。它包含许多有趣的信息:http : //download.oracle.com/javase/6/docs/technotes/guides/
更新:如果你不想使用代理来解析某些本地/内联网主机,请查看@Tomalak中的注释:
另外,不要忘记http.nonProxyHosts属性!
-Dhttp.nonProxyHosts="localhost|127.0.0.1|10.*.*.*|*.foo.com|etc"