コマンドラインで正常にコンパイルされたmaven Javaプロジェクトがありますが、Eclipseにインポートすると、CollectionUtilsに関するコンパイルエラーが発生します。
org.apache.commons.collections.CollectionUtils
プロジェクトには、Apache Commons コレクションの古いバージョンを参照する推移的な依存関係があるようです。エラーを正確に追跡する方法は?直し方?ありがとう。
コマンドラインで正常にコンパイルされたmaven Javaプロジェクトがありますが、Eclipseにインポートすると、CollectionUtilsに関するコンパイルエラーが発生します。
org.apache.commons.collections.CollectionUtils
プロジェクトには、Apache Commons コレクションの古いバージョンを参照する推移的な依存関係があるようです。エラーを正確に追跡する方法は?直し方?ありがとう。
mvn dependency:tree
おそらく、発行して、pomのどの依存関係が古いバージョンのApache Commonsをプルしているのかを把握することで、推移的な依存関係を追跡できます。
または、( m2eプラグインがインストールされている)pom.xmlファイルを開くとEclipse内で、エディターの下部に次のように[依存関係ツリー]タブが表示されます。
[検索]フィールドに、apache commons jarの名前を入力して、どの依存関係がそれをプルしているのかを調べることができます。適切な除外を追加したら、すべて桃色になります。
質問
Eclipse内にMavenプロジェクトをどのようにインポートしましたか。を実行してmvn eclipse:eclipse
から、通常のEclipseプロジェクトとしてインポートしましたか?その場合は、m2eプラグイン(上記のリンク)をインストールしてImport Existing Maven Project
から、Eclipse内からを使用してmavenプロジェクトをインポートすることをお勧めします。
Eclipseのクラスパス (.classpath
ファイル) が正しく構成されていないように見えます。Maven Eclipse Pluginを使用して、これを Maven に構成させることができます。コマンド ラインから次のコマンドを実行するだけです。
mvn eclipse:eclipse
.classpath
その後、Maven は、POM で定義されたすべての依存関係 (推移的な依存関係を含む) をファイルに正しく入力します。次に、Eclipse でプロジェクトを更新すると、すべての赤い十字が消えるはずです (うまくいけば...)。
エラーを正確に追跡する方法は?直し方?
呼び出す
mvn clean compile -e
このエラーを修正するのに役立つエラースタックトレースが表示されます