如何解决安装后在运行时会出现Java“ handshake_failure异常”,但从intelliJ运行时不会出现Java
我制作了一个Java应用程序,该应用程序连接到我的网站并对其进行GET请求。
当前,如果我在intelliJ中构建并运行Java应用程序,则它可以完美运行,成功连接并正确接收并打印GET请求。
但是,如果我使用jpackage tool安装应用程序,则将其作为已安装的应用程序运行会导致handhake_failure。我无法弄清楚在intelliJ中运行我的应用程序与作为已安装的应用程序运行之间的区别是什么可能导致这种情况。
第3行触发了handshake_failed错误。在这些行之前,我没有设置任何类型的网络配置/规则。
1 HttpClient client = HttpClient.newBuilder().build();
2 HttpRequest request = HttpRequest.newBuilder().uri(URI.create("http://www.bodytracker.net/version"))
.GET()
.build();
3 HttpResponse<String> response = client.send(request,HttpResponse.BodyHandlers.ofString());
4 double updateVersion = Double.parseDouble(response.body());
解决方法
解决了!我没有回答这个问题,因为我看不到其他涉及相同情况的问题。
以“调试模式”运行Java,intelliJ添加以下参数: “ -agentlib:jdwp = transport = dt_socket,address = 127.0.0.1:51967,suspend = y,server = n”
将此参数添加到我的jpackage安装中可以成功解决此问题,并且我的客户端现在可以正常连接到我的网站。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。