91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java.Net.UnknownHostException異常處理問題怎么解決

發布時間:2023-03-31 15:26:59 來源:億速云 閱讀:162 作者:iii 欄目:開發技術

這篇文章主要介紹了java.Net.UnknownHostException異常處理問題怎么解決的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇java.Net.UnknownHostException異常處理問題怎么解決文章都會有所收獲,下面我們一起來看看吧。

同事新分的測試機resin啟動的時候出現了Java.NET.UnknownHostException異常,問題原因是在系統的 /etc/Hostname中配置了主機名,而在/etc/hosts文件中沒有相應的配置。簡單的解決辦法是對應關系配好就可以,甚至除/etc/Hostname這個文件也可以。

java.Net.UnknownHostException異常處理問題怎么解決

深層的原因: 在大多數Linux操作系統中,都是以/etc/hosts中的配置查找主機名的,但是 Detian based system用/etc/Hostname文件中的配置做主機名。

而Java 的InetAddress.java 調用 InetAddressImpl.java 的   public native String getLocalHostName() throws UnknownHostException; 來獲取本地主機名, Java 的這個方法是native的,是本地系統的一個實現,所以在本地配置出現問題的情況下,Java 代碼出現問題。

hostname 查看本機名稱,

  • 若本機名稱不是一個IP地址, 比如是"sohu",則必須在/etc/hosts中配置 sohu對應本機IP,否則java.net.InetAddress.getLocalHost會拋出java.Net.UnknownHostException異常.

  • 若本機名稱是一個IP地址,而且必須是本機某塊網卡的IP, 

  • 第三種情況比較麻煩。倘若本機名稱是一個IP地址,但不是本機某塊網卡的IP,或者只是某個IP地址的一部分,比如192.168(這是我遇到過的),那么執行java.net.InetAddress.getLocalHost().getHostAddress()會得到192.0.0.168,java.net.InetAddress.getLocalHost().getHostAddress()不會拋出異常,但相關訪問會停滯很久,原因是他在查找192.0.0.168這個地址, 若網絡中不存在這個地址,最終會拋出Connection timed out異常;若網絡中存在這個地址,Connection refused to host這個異常將被拋出,這些顯然都不是想要的

結論:
    1. 設置本機名稱:hostname mName     xxx最好不是寫IP地址的形式,若寫則必須是本機的完全IP形式(不要只寫一半)
    2. 在/etc/hosts里加一行 本機IP mName
    3. 用InetAddress.getLocalHost().getHostAddress()測試一下結果是否是與本機IP一致

關于“java.Net.UnknownHostException異常處理問題怎么解決”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“java.Net.UnknownHostException異常處理問題怎么解決”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

安乡县| 娱乐| 越西县| 南乐县| 宜州市| 石渠县| 潍坊市| 漳浦县| 麻阳| 五莲县| 个旧市| 石狮市| 昌吉市| 博兴县| 万山特区| 绥棱县| 界首市| 龙川县| 竹山县| 平度市| 宝山区| 南木林县| 赤城县| 平阳县| 垣曲县| 巴里| 和林格尔县| 方城县| 陈巴尔虎旗| 洪湖市| 舒城县| 墨脱县| 沛县| 宜川县| 鹤岗市| 彝良县| 通化市| 竹山县| 乐至县| 永济市| 东阿县|