我试图打开一个URL并逐行阅读网站。我可以在eclipse中做到这一点,因为我猜Eclipse会自动为你配置它。当我尝试从命令行运行程序时,程序挂起并且从不读取URL。如何配置Java的代理设置?
经过一番研究,问题与代理设置有关,我想通了。所有文章中,我遇到过说要改变这样的事情:
System.setProperty("java.net.useSystemProxies","true");
或添加行代码是这样的:
System.setProperty("http.proxyHost", "webcache.mydomain.com
System.setProperty("http.proxyPort", "80");
- 但是我不知道该怎么把我的代理设置什么任何这些System.setProperty选项都可以。有谁知道如何设置代理设置?我只是试图从本地主机上的家用计算机上运行此操作,并且我甚至不支持代理或任何其他操作。
这里是我使用的代码,在Eclipse中工作正常。
URL link = new URL("http://www.yahoo.com");
BufferedReader in = new BufferedReader(new InputStreamReader(link.openStream()));
//InputStream in = link.openStream();
String inputLine = "";
int count = 0;
while ((inputLine = in.readLine()) != null)
{
site = site + "\n" + inputLine;
}
in.close();
从命令行运行它会发生什么?你有什么错误吗?你能显示错误堆栈跟踪吗? – Bhaskar
您确定您的应用程序没有被您的操作系统代理所阻止(特别是如果您使用的是XP)吗? – VirtualTroll
+1防火墙或防病毒问题。如果您的网络没有代理服务器,则无需设置代理服务器。 –