1

http://mvnrepository.com/artifact/org.hibernateから Hibernate entitymanager をダウンロードすると、バージョン 4.2 のバリデータにも依存していることがわかります。ただし、最新は 4.3 です。バリデータのみに別の依存関係を追加すると、4.3 または 4.2 を使用することになりますか? そのようなシナリオにどのように対処することになっていますか? 手動でオーバーライドする必要がありますか? または、「メイン」の依存関係が依存している依存関係を使用するだけですか?

4

1 に答える 1

4

依存メカニズムの紹介によると

依存関係の仲介 - これにより、アーティファクトの複数のバージョンが検出されたときに使用される依存関係のバージョンが決定されます。現在、Maven 2.0 は「最も近い定義」の使用のみをサポートしています。これは、依存関係のツリーでプロジェクトに最も近い依存関係のバージョンを使用することを意味します。プロジェクトの POM で明示的に宣言することにより、常にバージョンを保証できます。

元の質問に答えるには:

バリデータのみに別の依存関係を追加すると、4.3 または 4.2 を使用することになりますか?

バージョン 4.3 で依存関係を明示的に追加する場合は、pom 内のすべてが推移的な依存関係よりも「近い」ため、4.3 を選択する必要があります。

そのようなシナリオにどのように対処することになっていますか? 手動でオーバーライドする必要がありますか? または、「メイン」の依存関係が依存している依存関係を使用するだけですか?

どの依存関係を使用するかについて少しでも疑問がある場合は、最新/最も安定したバージョンを選択し、それを明示的に pom に追加します。しかし、それは私だけです。

于 2012-10-24T19:33:52.830 に答える