Java 网络连接失败可能由多种原因导致,你可以按下面思路逐步排查和解决。
ping www.baidu.com
telnet ip port
例如:
telnet 192.168.1.10 8080
HttpURLConnectionURL url = new URL("http://example.com");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setConnectTimeout(5000);
conn.setReadTimeout(5000);
int code = conn.getResponseCode();
常见异常:
java.net.ConnectException: Connection refusedjava.net.SocketTimeoutExceptionUnknownHostException原因:
✅ 解决:
0.0.0.0 而不是 127.0.0.1原因:
✅ 解决:
InetAddress.getByName("example.com");
/etc/hosts 或 DNS原因:
✅ 解决:
conn.setConnectTimeout(10000);
conn.setReadTimeout(10000);
✅ 检查:
firewall-cmd --list-ports
公司网络常需代理
✅ 设置代理:
System.setProperty("http.proxyHost", "proxy.ip");
System.setProperty("http.proxyPort", "8080");
或在 JVM 启动参数:
-Dhttp.proxyHost=proxy.ip -Dhttp.proxyPort=8080
异常:
SSLHandshakeException
✅ 解决:
-Djavax.net.debug=all
e.printStackTrace();
你可以告诉我:
我可以帮你精准定位问题。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。