6

私はMavenを初めて使用するので、Mavenjarプラグインの使用例を確認したいと思います。私はすでにここを訪れましたが、例は見つかりませんでした。ドキュメントページには、この目標のためにリストされたいくつかのパラメーターがありましたが、私が探していたのは、それらを「goal」または「executions」タグに配置する方法です。ありがとう。

4

2 に答える 2

7

通常、jar プラグインは使用しません。パッケージングを jar に設定すると、ゴール jar:jar が自動的に実行されます。

jar プラグインを構成する場合は、次のようにします。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.3.1</version>
    <configuration>
        <excludes>
            <exclude>**/*.xml</exclude>
        </excludes>
    </configuration>
</plugin>

(例: jar からすべての xml ファイルを除外します)

ゴールまたは実行ブロックを追加する必要はありません。グローバル構成ブロックはすべての実行に対して有効です。

参照:

于 2010-10-29T15:33:47.070 に答える
6

私は Maven を初めて使用するので、maven jar プラグインの使用例を見てみたいと思います。私はすでにここを訪れましたが、例は見つかりませんでした。

通常、すべての Maven プラグインには使用状況ページがあり、Maven JAR Pluginも同様です。しかし、 seanizerが指摘したように、Maven JAR プラグインを直接呼び出すのは珍しいことです。実際には「直接使用する」わけではなく、Maven が行います。

Maven には、フェーズ (例: 、、など) で構成されるビルド ライフサイクルと、プロジェクトのパッケージに依存するデフォルトのライフサイクル バインディング(フェーズにバインドされたプラグインのゴール) が付属しています。そして、ユーザーとして(例: )を呼び出すと、Maven は特定のプラグインの目標を使用して実際にジョブを実行します。compiletestpackagephasepackage

たとえば、packagingが typeのプロジェクトのjar場合、目標は にバインドされpackagejar:jarMaven はプロジェクトを JAR としてパッケージ化します。packagingタイプが のプロジェクトの場合warwar:warは にバインドされpackage、Maven は 中に WAR を生成しpackageます。等々。

このアプローチの利点は、プロジェクトの種類 ( jarwarearなど) に関係なく、ビルドするために詳細を知る必要がないことです。「既知の」フェーズを知る必要があるだけです。compileプロジェクトをtestコンパイルする、テストをコンパイルして実行する、packageパッケージ化するなどです。

ドキュメンテーション ページには、この目標のためにいくつかのパラメーターがリストされていましたが、私が探していたのは、それらを「目標」または「実行」タグに配置する方法です。

プラグインの構成に関するガイドでは、要素を指定することによって行われる任意のMaven プラグインを構成するための規則について説明しています<configuration>。これ<configuration>は、一般的 (グローバル) にすることも、ビルド ライフサイクル<execution>の特定のフェーズに参加する for ゴールに固有にすることもできます。そして、それらの 1 つを構成する方法を理解したら、それらのいずれかを構成できます (パラメーターのみが各プラグインに固有です)。

Maven JAR プラグインの特定のケースでは、グローバルで十分であり、 (デフォルトのものに加えて)<configuration>特別なものが必要になることはほとんどありません。<execution>

于 2010-10-29T22:09:27.263 に答える