EclipseにGradleプロジェクトがありますIDEおよびオプションgradle run
を使用して、Javaアプリケーションを実行します。
Javaコードにエラーがあり、デバッグしたいのですが、gradle run
を実行すると、デバッガーがブレークポイントで停止しません。メニュー、gradle debug
のようなものはありません。
アプリケーションをデバッグするにはどうすればよいですか?
受け入れられた答えは機能するはずですが、はるかに簡単な方法で達成できます。
ただ走れ gradle run --debug-jvm
。これにより、アプリケーションがリモートデバッグモードで起動し、Eclipseなどのリモートデバッガーをポート5005
。
EclipseをIDEとして使用する場合:Eclipseで、プロジェクト->としてデバッグ...->デバッグ構成->リモートJava Application。As Host set localhost
、スポーツ 5005
、そしてあなたは自由に行くことができます。
詳細については、 テストについては公式のGradle Java plugin doc を参照してください。
[...]は、呼び出し時に--debug-jvmタスクオプションを使用して有効にすることもできます(Gradle 1.12以降)。
EclipseでGradleプロジェクトをデバッグするには、次の手順に従います。
ステップ1:
これらをbuild.gradle
ファイル:
tasks.withType(JavaExec) {
if (System.getProperty('DEBUG', 'false') == 'true') {
jvmArgs '-Xdebug', '-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=9099'
}
}
ステップ2:
プロジェクト実行のルートから:
gradle -DDEBUG=true run
コンソールに次のようなものが表示されます。
Listening for transport dt_socket at address: 9099
ステップ3:
次に、ソースファイルのEclipseにブレークポイントを設定します。
ステップ4:
最後のステップとして、Eclipseで[プロジェクト]> [デバッグ]> [デバッグ構成]> [リモートJava application。
そこで、これらのフィールドを設定する必要があります。
1. Project (this should be set to name of your Eclipse project)
2. Host (here it's localhost)
3. Port (in this example it will be 9099)
「デバッグ」をクリックします。これで、Eclipseでブレークポイントに達するたびにプログラムが停止します。
サンプルプロジェクトでこれらの手順の詳細を確認するには、 GitHubのこのgradleサンプル を参照してください。
Build.gradleファイルに次のコードを追加しても、デバッグモードでgradleタスクを実行できませんでした。
tasks.withType(JavaExec) {
if (System.getProperty('DEBUG', 'false') == 'true') {
jvmArgs '-Xdebug', '-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005'
}
}
代わりに、次の手順を実行し、デバッグモードで自動的に実行することに成功しました。
gradle(UNIX)の場合:
DEFAULT_JVM_OPTS="-Xdebug-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005"
gradle.bat(NT)の場合:
set DEFAULT_JVM_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
。 4.コンソールからGradleコマンドを実行します。