web-dev-qa-db-ja.com

Eclipseでのantデバッグ

Eclipseを使用したANTのデバッグ機能について教えてください。基本的に、同僚が作成したANTビルドスクリプトがあり、呼び出されているさまざまなタスクが何であるかを確認するために、各ターゲットをステップスルーしたいと思っていました。

21
Jony

次の手順でEclipseでこれを行うことができます。

  1. ビルドファイルは必ずANTエディターで開いてください(ビルドファイルを右クリック-> [アプリケーションから開く]-> Antエディター)。
  2. ブレークポイントを設定するビルドファイルの左マージンをダブルクリックします。
  3. Antビューを開きます(ウィンドウ->ビューの表示-> Ant)。
  4. ビルドファイルがビューにない場合は、単純に追加できます。
  5. 追加したら、実行するAntターゲットを右クリックし、[デバッグ]-> [Antビルド]を選択します。
  6. デバッグパースペクティブが開き、プロセスはブレークポイントで停止するはずです。
  7. デバッグ時に引数を設定する必要がある場合があります。次のように選択して設定できます:デバッグ-> Antビルド。そして、引数を選択する必要があります。そして、値は次のように入力できます:-Dprop.name = property value
31
Ross

Antは単なるJavaアプリケーションなので、デバッグ構成(タイプJava Application)をEclipseに追加するだけです。 Javaを介したAntの実行 AntをJavaアプリケーションであるかのように呼び出す方法です。JavaアプリをEclipseでデバッグする方法を知っていると仮定します。これで残りの作業は完了です。そうでない場合は、確認してください。

4
Mark Peters

スクリプトを作成するantdebug.sh環境変数を設定しますANT_OPTS蟻を始める前に

#!/bin/bash
set -e
export ANT_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=2607"
# now execute ant
exec ant "$@"

その後、IDEを使用してリモート接続できます。 suspend=y、接続されるまで実行を一時停止します。

4
reto

大きなantファイル、または大きなJavaプロジェクトの場合、互いに呼び出す複数のantファイルがある場合、依存関係グラフが非常に役立つことがわかりました。私は グランド この目的に。

もちろん、特定のターゲット内の一連の命令をデバッグする場合、これはあまり役に立ちません。

4
rsarro

Antの内部を深く掘り下げる前に、-d(デバッグ)フラグを指定してスクリプトを実行し、出力を確認することをお勧めします。 Ant自体ではなく、特定のAntスクリプトがどのように機能しているか(または機能していないか)を理解することに関心があるとします。

Antが関心のある分野である場合、上記の答えは従うべき方向です。

2
Miro A.

以下のxmlタグをant build.xmlのターゲットinitの後に追加します

<javac srcdir="${src.Java.dir}" destdir="${target.build.dir}" includeantruntime="true" source="${source}" target="${target}" debug="true" debuglevel="lines,vars,source" classpathref="main.classpath" fork="true" memoryinitialsize="512m" memorymaximumsize="512m" />

javacがすでに存在する場合は、debug="true" debuglevel="lines,vars,source"を追加して、インタラクティブなデバッグセッションを実行してください。

0
tk_