それ自体が依存関係 DEP を持つ Maven プラグインを作成しています。DEP は、複数のバージョンのうちの 1 つです。私が必要としているのは、消費者が DEP とそのバージョンを明示的に言及する必要があるということです。コンシューマーが DEP への暗黙の依存関係を使用したり、新しい DEP をリリースしたときに新しいバージョンを自動的に取得したりしたくありません。
これが私が今持っているものですが、これは、コンシューマーの pom で DEP が指定されていない場合、常に最新のものを取得することを意味します。
私のプラグインの依存関係セクションには、次のものがあります。
<dependencies>
<dependency>
<groupId>org.foo.bar</groupId>
<artifactId>DEP</artifactId>
<version>[1.8.3-01,9.9.9)</version>
</dependency>
...
</dependencies>
次に、誰かが私のプラグインを使用しています:
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<compilerId>my-compiler-id/compilerId>
</configuration>
<dependencies>
<dependency>
<groupId>org.foo.bar</groupId>
<artifactId>my-compiler</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
上記の場合、すべてがコンシューマに対して機能し、コンシューマは常に最新バージョンの を取得しDEP
ます。`DEP の特定のバージョンが必要な場合は、maven-compiler-plugin の依存関係セクションのように、pom に明示的に追加する必要があります。
<dependency>
<groupId>org.foo.bar</groupId>
<artifactId>DEP</artifactId>
<version>1.8.6-09</version>
</dependency>
現在、この追加の明示的な依存関係はオプションです。欠落している場合は、最新のものを使用します。この依存関係を必須にしたい。それ、どうやったら出来るの?