2013-01-31 157 views
0

我開發了一個小型Gui應用程序,用於從遠程服務器下載日誌文件。 如果我從Netbeans IDE 7.2(無連接問題)啓動應用程序,該應用程序工作正常SocketException:網絡無法訪問

但是,如果我將它作爲獨立的jar文件啓動,則會收到一個套接字異常,指示網絡無法訪問。

創建連接的代碼如下:

... 
CookieManager manager = new CookieManager(); 
manager.setCookiePolicy(CookiePolicy.ACCEPT_ALL); 
CookieHandler.setDefault(manager); 

URL url = new URL(logFileRemotePath); 
URLConnection conn = url.openConnection(); 
InputStream input = conn.getInputStream(); 
... 

收到的例外是:提前

+0

你可以調試日誌logFileRemotePath值嗎? – Fildor

回答

2

如果您的操作系統

java.net.SocketException: Network is unreachable: connect 

任何想法

謝謝有一個防火牆在運行,它有可能是以某種方式配置的它允許從Netbeans訪問網絡,但不能執行jar。

您是否即時或在正常超時時間後收到異常?如果它是前者,則意味着應用程序和網絡資源之間的某個組件會立即重置您的連接 - 例如某些防火牆。

+0

謝謝你的answear。 實際上有一個防火牆在運行。 但我注意到以下幾點: netbeans沒有問題,但是JRE的問題。 如果我使用JRE 1.6運行應用程序,則連接沒有問題。如果我使用JRE 7運行它,則會出現上述錯誤。 任何想法?這可能是一個錯誤? – user2029753

+0

@ user2029753:它也可能是一個bug ...也可能是,防火牆不會讓來自JRE 7的網絡交互通過,但接受來自JRE 1.6的交互......如果您的系統允許,我建議檢查一下,防火牆是否配置爲阻止JRE 7網絡交互 –