[[Spring-MVC/ステップ・バイ・ステップ]]

2008/03/22からのアクセス回数 &counter;

#contents

mavenを使ったプロジェクトでは、
-- コンパイル
-- テスト
-- 実行
のサイクルはコンパクトに実行できるのですが、いざWebアプリケーションをデバッグしようと
するとwarファイルをtomcatのwebappsにコピーしてEclipseのデバッガーを使ってデバッグした
経験はありませんか?

** mavenの実行プログラムのデバッグ [#u604fc53]
javaのVMには、外部からのリモートデバッグを可能にするオプションが提供されています。

例えば、xxx.jarを
#pre{{
$ java -Xdebug -Xrunjdwp:transport=dt_socket,address= 8000,server=y,suspend=n -jar xxx.jar
}}

これで、1044ポートを使って他のマシンからxxx.jarのプログラムをデバッグすることができるようになります。

*** mavenの設定 [#tb2d2738]
このリモートデバッグオプションをmavenに使用するために、環境変数MAVEN_OPTSを使います。
LinuxやMac OSXでは.bashrcに以下の行を追加します。Windowsの場合にはユーザの環境変数にセットしてください。
#pre{{
export MAVEN_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"

}}

*** Eclipseの設定 [#c5302a48]
つぎにEclipseのデバッガを設定します。

-- JavaのPackage Explorereからデバッグしたいプロジェクトを選択(ここでは、mvc-convention)
-- Runメニューから"Debug..."を選択します
-- Remote Java Applicationを選択し、右クリックでNewを選択します

#ref(remote_application.jpg);

-- Name:がmvc-convention、Project:にmvc-conventionが設定されていることを確認します
-- Host, Portがデバッグ対象のホストマシンのIPアドレスとポートを指定します。同一マシンの場合localhost, 8000とします。

#ref(remote_debug_setting.jpg);

-- Closeボタンで保存します


** コメント [#m1f474a6]
この記事は、

#vote(おもしろかった,そうでもない,わかりずらい)

皆様のご意見、ご希望をお待ちしております。

#comment


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
SmartDoc