Java远程调试(JPDA)在Tomcat 9中不适用于我

问题描述 投票:1回答:1

我正在尝试在最近升级的Tomcat 9.0.13和Open JDK 11.0.1上远程调试Tomcat webapp。服务器是Redhat Enterprise Linux 7.6,我在Windows 7开发人员盒上使用Eclipse进行连接。

Tomcat启动,应用程序可在端口8080上访问,但在某些请求时失败。所以在我的Eclipse上,我已经使用我的配置细节配置了远程Java应用程序。当我尝试连接到它时,连接失败了

Failed to connect to remote VM. Connection refused.

我正在使用默认端口8000,在Linux服务器上,netstat -an显示在Tomcat启动时有一个进程在该端口上侦听,而不是在Tomcat停止时。

我已经尝试从Windows机箱远程登录到端口8000并获取

$ telnet c516vefpubrec 8000
Trying XX.XXX.XX.XX...
telnet: Unable to connect to remote host: Connection refused

当我运行旧的Tomcat 7 + Java 1.8时,一切都很成功。我尝试过其他具有相同结果的端口。

这可能是个错误吗?是否有配置项在Tomcat 9上启用JPDA?

java tomcat tomcat9 jpda
1个回答
1
投票

我有同样的问题。我从centos vm运行应用程序并尝试从我的Windows机器调试。

我必须进入vm上的catalina.sh文件并进行编辑。在处理jpda标志的部分中,JPA_OPTS变量需要更改为JPDA_OPTS="-agentlib:jdwp=transport=$JPDA_TRANSPORT,address=*:$JPDA_ADDRESS,server=y,suspend=$JPDA_SUSPEND"

注意JP:变量之前的* :.这允许任何IP地址访问远程调试。我相信默认它只允许本地主机。

希望这可以帮助。

© www.soinside.com 2019 - 2024. All rights reserved.