我想远程调试运行在Tomcat 7上的应用程序。Tomcat是作为一个Windows Server 2008服务运行的。
我在Tomcat的Java配置面板的Java选项中添加了以下内容:
我通过访问已部署到Tomcat的应用程序并将结果记录到日志文件中的
-Xdebug -Xrunjdwp:transport=dt_socket,address=4711,server=y,suspend=n
并打开了我的工作站和服务器防火墙上的此端口。
但是,当我尝试从我的工作站上的IntelliJ 9进行调试时,出现错误消息Unable to open debugger port : java.net.ConnectException "Connection timed out: connect"
。jvm是标准的Sun/Oracle 64位JVM版本1.6.0_27。我通过访问已部署到Tomcat的应用程序并将结果记录到日志文件中的
ManagementFactory.getRuntimeMXBean().getInputArguments()
来验证命令行参数正在使用。
我通过Wireshark在我的工作站和服务器上验证,TCP请求在端口4711上从我的计算机发送并到达服务器,但没有答案。在服务器上运行netstat -a
不显示在此端口上侦听的进程。因此,我假设Tomcat/JVM未启动远程调试。
catalina jpda start
? - pabrantes