2

私の現在の設定は次のもので構成されています。

  • プラグインのparentPom
  • maven2のみと互換性のあるcustomPluginバージョン2.0
  • maven3のみと互換性のあるcustomPluginバージョン3.0

parentPomを参照し、customPluginを使用するさまざまなプロジェクト。ユーザーがmaven2を使用する場合、customPluginはバージョン2である必要があります。maven3を使用する場合、customPluginはバージョン3である必要があります。

私はもともとこのガイドに従った

上記のページで説明したように、Mavenバージョンの検出は、プロファイルと{basedir}プロパティを使用して実行できます。検出メカニズムは、parentPomに実装されています。私が遭遇している問題は、私のプロジェクトがプロファイルのmaven3検出メカニズムをアクティブにしないことです。これは、プロファイルがMavenに継承されていないためだと思います。

次の目的で行うことをお勧めします。-子pomsでpluginVersionを明示的に宣言しないようにする-maven2とmaven3の互換性を提供する

手伝ってくれてどうもありがとう。

4

1 に答える 1

2

<build><pluginManagement> ...親 POM レベルの内部プロファイル (Maven バージョンによってアクティブ化)内でプラグイン バージョン宣言を使用します。次に、バージョンを指定せずにプラグインをどこでも (親 POM またはモジュールで) 使用でき、必要に応じて動作するはずです。

于 2012-06-15T06:46:26.727 に答える