Tomcat7で実行されているアプリケーションをリモートデバッグしたい。TomcatはWin2008サーバーでサービスとして実行されています。TomcatのJava構成パネルのJavaオプションに以下を追加
-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 /Oracle64ビットJVMバージョン1.6.0_27です。
ManagementFactory.getRuntimeMXBean().getInputArguments()
Tomcatにデプロイされたアプリケーション内にアクセスし、結果をログファイルに記録することで、コマンドラインパラメーターが使用されていることを確認しました。ワークステーションとサーバーのWiresharkを介して、ポート4711のTCP要求がPCから送信され、サーバーに到着することを確認しましたが、応答がありません。サーバーで実行netstat -a
している場合、このポートでリッスンしているプロセスは表示されません。したがって、Tomcat/JVMがリモートデバッグを開始しないと思います。