![](/img/trans.png)
[英]java.net.ConnectException: Connection timed out: connect error connecting to remote database
[英]java.net.ConnectException: Connection timed out while connecting through a proxy
我試圖從URL下載一個zip文件,並使用java代碼將其存儲在本地系統中。 我也使用系統代理。 它無法連接到網址。 任何想法?
public static void main()
{
try
{
long startTime = System.currentTimeMillis();
System.out.println("Connecting to the url...\n");
System.setProperty("http.proxyHost", " http://abc.com");
System.setProperty("http.proxyPort","1111");
URL url = new URL("http://sourceforge.net/projects/sevenzip/files/7-Zip/9.20/7z920.exe/download?use_mirror=nchc");
url.openConnection();
InputStream reader = url.openStream();
FileOutputStream writer = new FileOutputStream("/home/user/result/apps.zip);
byte[] buffer = new byte[153600];
int totalBytesRead = 0;
int bytesRead = 0;
System.out.println("Reading ZIP file 150KB blocks at a time.\n");
while ((bytesRead = reader.read(buffer)) > 0)
{
writer.write(buffer, 0, bytesRead);
buffer = new byte[153600];
totalBytesRead += bytesRead;
}
long endTime = System.currentTimeMillis();
System.out.println("Done downloading. " + (new Integer(totalBytesRead).toString()) + " bytes read (" + (new Long(endTime - startTime).toString()) + " millseconds).\n");
writer.close();
reader.close();
}
catch (MalformedURLException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
unZip(INPUT_ZIP_FILE);
}
我收到以下錯誤:
java.net.ConnectException: Connection timed out
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:529)
at java.net.Socket.connect(Socket.java:478)
at sun.net.NetworkClient.doConnect(NetworkClient.java:163)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:394)
at sun.net.www.http.HttpClient.openServer(HttpClient.java:529)
at sun.net.www.http.HttpClient.<init>(HttpClient.java:233)
at sun.net.www.http.HttpClient.New(HttpClient.java:306)
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:977)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:925)
at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:836)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1172)
at java.net.URL.openStream(URL.java:1010)
at test.main(test.java:33)
當我嘗試ping網址時,它會顯示未知主機,但我可以ping www.google.com這樣的網址
試試這個頁面如何使用代理 - 看起來很全面。
我認為你是在一些防火牆后面,因為你的代碼在我的本地機器上運行完美。 我沒有對您的代碼進行任何更改。 zip文件在我的本地計算機上下載。 控制台顯示以下消息:
連接到網址...
一次讀取ZIP文件150KB塊。
完成下載。 讀取1110476個字節(13816毫秒)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.