2017-02-20 7 views
1

私のプロジェクトと親のpomには、それぞれ依存関係管理セクションがあります。これらのセクションは、両方とも直接エントリとBOMの「インポート」(すなわち、純粋にdependecyManagementで構成され、インポートされる)を持っています。今私は評価の順序を把握しようとします。私の最高の推測:dependencyManagement - 親ポームでのインポートと直接入力

  1. 親ポンポンの輸入
  2. 子ポンポン輸入
  3. 親ポンポン直接dependencyManagementエントリ
  4. 子ポンポン直接dependencyManagementエントリ

これは、後の要素は、以前の要素を上書きすることを意味します。これは正しいです?その場合、子要素が常に親要素を上書きするようにこの動作を変更できますか?

+0

この文書については、https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.htmlとお考えですか?特に: "Maven 2.0.9以来、それは宣言の順序です:最初の宣言が勝ちます" –

+0

https://issues.apache.org/jira/browse/MNG-5971は私の問題を記述しているようです。私が正しく理解すると、インポートは直接宣言されたdependencyManagementエントリを上書きすることはできません。 –

答えて

0

チケット

issues.apache.org/jira/browse/MNG-5971

後には、直接管理エントリは子プロジェクトにおける輸入によって上書きされないことを確かに真実です。この動作は、チケットのステートメントに従って、Maven 3.6.0で変更する必要があります。

Maven 3.6.0は遠い将来、この問題を回避する必要があります。私はおそらく、親のpomに直接の管理エントリを避けるために補助的なbomを構築します。

関連する問題