1

Maven でのクラスローディングの順序について質問があります。

Mavenバージョン2.0.9以降、クラスローディングは決定論的であり、pomの順序を使用しています。推移的な依存関係については明確ではありません。maven はすべての最上位の依存関係を最初にロードし、次に推移的な依存関係をロードしますか。または、最上位の依存関係をすべて推移的な依存関係と共にロードしてから、次の最上位の依存関係をロードします。

完全に正しいMavenセットアップでは順序に問題がないことはわかっていますが、依存関係に重複したクラスがいくつかあり、どのクラスが使用されているかを知りたいです。すべてのクラスが両方の jar でカバーされているわけではないため、推移的な依存関係を除外することはできません。

例: 私のプロジェクトには 3 つの依存関係 A、B、C があります。A には C への推移的な依存関係があります。依存関係をロードする Maven の順序はどれですか?

POM:

    • C
  • B
  • C

ケース A:

A --> B --> C

ケース B: A --> (推移的な依存関係) C --> B --> C

ありがとうございました

4

1 に答える 1