Tomcat7で実行されているアプリケーションをリモートデバッグしたい。TomcatはWin2008サーバー上のサービスとして実行されています。以下をTomcatのJava構成パネルのJavaオプションに追加しました:-Xdebug -Xrunjdwp:transport=dt_socket,address=4711,server=y,suspend=n
そして、ワークステーションとこのポートのサーバーでファイアウォールを開きました。しかしワークステーションでIntelliJ9からデバッグしようとすると、エラーメッセージUnable to open debugger port : Java.net.ConnectException "Connection timed out: connect"
が表示されます。jvmは標準のSun/Oracle64ビットJVMバージョン1.6.0_27です。
Tomcatにデプロイされたアプリケーション内でManagementFactory.getRuntimeMXBean().getInputArguments()
にアクセスし、結果をログファイルに記録することにより、コマンドラインパラメーターが使用されていることを確認しました。ワークステーションとサーバーでWiresharkを介して、TCPポート4711の要求がPCから送信され、サーバーに到着することを確認しましたが、応答がありません。サーバーでnetstat -a
を実行しています。このポートでリッスンしているプロセスは表示されないため、Tomcat/JVMがリモートデバッグを開始しないと思います。
Tomcatサービス構成パネルのJavaパネル)の別行に-Xdebugと-Xrunjdwp ...を配置する必要があります。
だから持っている:
-Xdebug -Xrunjdwp:transport=dt_socket,address=4711,server=y,suspend=n
動作しませんが:
-Xdebug
-Xrunjdwp:transport=dt_socket,address=4711,server=y,suspend=n
意志。