リモートデバッグ
リモートデバッグとは、JavaVMとTCP/IP通信をしながらデバッグを行う仕組み。javaVM上で動いているプログラムであればローカルだろうとリモートだろうとデバッグ可能。普通のデバッグだと自分でビルドしてデバッグする必要があるが、リモートデバッグならすでに動いているプログラムのデバッグをすることができて便利。
リモートデバッグする際にはjavaの実行時に以下のオプションを指定すればいい。
>-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000
それぞれのオプションの意味は以下を参照。
-Xdebug
デバッグを有効にする
-Xrunjdwp
ターゲット VM に JDWP の実装をロードする。サブオプションは以下を参照。
transport
通常はソケット・トランスポートが使われる。
server
この値が y の場合、ターゲット・アプリケーションは接続先となるデバッガー・アプリケーションをリッスンする。
suspend
この値が y の場合、ターゲット VM はデバッガー・アプリケーションが接続されるまで中断される。
address
接続するポート番号。