0

taskdefにはfork属性がないため、デフォルトでは、taskdefで定義されたタスクはforkモードで実行されるか、antスクリプトが実行される同じプロセス内で実行されます。

私のタスクは以下のように定義されています

<taskdef name="test" classname="com.org.test.test1" loaderref="test.classloader" />

よろしくお願いします、ソマン

4

1 に答える 1

1

いいえ、同じプロセスです。

それを証明する最も簡単な方法として、いくつかの単純なターゲットとカスタムタスクを含む単純なAntビルドファイルを実行し、プロセスマネージャーを使用してAntプロセスが新しいプロセスを作成するかどうかを確認します。

フォークされたプロセスで何かを実行したい場合は、タスクのJavaコードで自分で実行する必要があります。一部のタスク(junitまたはなどjava)には、fork関連するパラメーターがあります。これは、Antではなく、タスク自体によって実行されます。

于 2013-03-25T09:09:24.110 に答える