Maven のゴールで Java クラスの実行をトリガーしたいと思います。Makefile
次の行を使用して移行しようとしています:
neotest:
mvn exec:java -Dexec.mainClass="org.dhappy.test.NeoTraverse"
そして、現在行っているmvn neotest
ことを制作していきたいと思っています。make neotest
どちらもexecプラグインドキュメントまた、Maven Ant タスクページにはわかりやすい例が一切ありませんでした。
現在、私は次の場所にいます:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.1</version>
<executions><execution>
<goals><goal>java</goal></goals>
</execution></executions>
<configuration>
<mainClass>org.dhappy.test.NeoTraverse</mainClass>
</configuration>
</plugin>
ただし、コマンドラインからプラグインをトリガーする方法はわかりません。
ベストアンサー1
とともにグローバル構成exec-maven-plugin に定義したもの:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.4.0</version>
<configuration>
<mainClass>org.dhappy.test.NeoTraverse</mainClass>
</configuration>
</plugin>
mvn exec:java
コマンドラインで呼び出すと、クラスを実行するように設定されたプラグインが呼び出されますorg.dhappy.test.NeoTraverse
。
したがって、コマンドラインからプラグインをトリガーするには、次のコマンドを実行します。
mvn exec:java
さて、標準ビルドの一部として目標を実行したい場合はexec:java
、目標を特定の段階のデフォルトのライフサイクルこれを行うには、要素phase
内で目標をバインドする を宣言しますexecution
。
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<id>my-execution</id>
<phase>package</phase>
<goals>
<goal>java</goal>
</goals>
</execution>
</executions>
<configuration>
<mainClass>org.dhappy.test.NeoTraverse</mainClass>
</configuration>
</plugin>
この例では、クラスはpackage
フェーズ中に実行されます。これは単なる例なので、ニーズに合わせて調整してください。プラグイン バージョン 1.1 でも動作します。