1. ホーム

[解決済み】Javaアプリケーションのリモートデバッグ

2022-04-19 19:59:05

質問

私は、Linuxマシン上でJavaアプリケーションを実行しています。 私は、以下を使用してjavaアプリケーションを実行します。

java myapp -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=4000, suspend=n

このLinuxマシンでTCPの4000番ポートを開けています。 Windows XPマシンからeclipseを使用して、このアプリケーションに接続しようとします。 Windowsでもポートを開放しています。

どちらのマシンもLAN上にありますが、デバッガをJavaアプリケーションに接続することができないようです。 何が間違っているのでしょうか?

解決方法を教えてください。

編集する。 ここで呼びかけをカット&ペーストしている人がいることに気づきました。私が最初に出した答えは、OPだけに関係するものでした。以下は、より現代的な呼び出しスタイルです(8000という従来のポートの使用も含む)。

java -agentlib:jdwp=transport=dt_socket,server=y,address=8000,suspend=n <other arguments>

オリジナルの回答が続きます。


これを試してみてください。

java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=4000,suspend=n myapp

ここで2点。

  1. にはスペースを入れません。 runjdwp オプションを指定します。
  2. オプションはクラス名の前に来ます。クラス名の後にある引数は、あなたのプログラムへの引数です!