0

Java アプリケーションへのさまざまなエントリに複数の Linux bash スクリプトを使用する Maven プロジェクトがあります。exec-maven-plugin でこれを解決したので、スクリプトは通常 mvn -e -o -q exec:exec -Dexec.executable="java" -Dexec.args="..." のようになります。何らかの理由で、オフライン フラグ (-o) を使用するように制限されています。

私の質問は次のとおりです。コンパイル段階で exec-maven-plugin がダウンロードされるようにするにはどうすればよいですか? 開発者が exec-maven-plugin をダウンロードしていない可能性があります。exec-maven-plugin は maven オフライン フラグとともに使用されるため、存在しない場合はダウンロードされません。

4

1 に答える 1

0

@eis のコメントのおかげで、私はこれを整理することができました。ポンは次のようになります。

<properties>
  <additionalJavaArgs></additionalJavaArgs>
</properties>
...
<build>
  <plugins>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>exec-maven-plugin</artifactId>
      <version>1.2.1</version>
      <configuration>
        <executable>java</executable>
        <commandlineArgs>
          -XX:+PrintCommandLineFlags -showversion -classpath %classpath ${additionalJavaArgs}
        </commandlineArgs>
      </configuration>
    </plugin>
  </plugins>
</build>

bash スクリプトは次のようになります。

ADDITIONAL_JAVA_ARGS=$*
mvn -e -o -q exec:exec -DadditionalJavaArgs="$ADDITIONAL_JAVA_ARGS"

このようにして、スクリプトのユーザーはメイン クラスを追加し、その後に無制限の数のアプリケーション引数を追加できます。

于 2012-09-18T12:07:39.227 に答える