1

コマンドラインで正常にコンパイルされたmaven Javaプロジェクトがありますが、Eclipseにインポートすると、CollectionUtilsに関するコンパイルエラーが発生します。

org.apache.commons.collections.CollectionUtils

プロジェクトには、Apache Commons コレクションの古いバージョンを参照する推移的な依存関係があるようです。エラーを正確に追跡する方法は?直し方?ありがとう。

4

3 に答える 3

2

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プロジェクトをインポートすることをお勧めします。

于 2012-08-09T17:41:40.600 に答える
1

Eclipseのクラスパス (.classpathファイル) が正しく構成されていないように見えます。Maven Eclipse Pluginを使用して、これを Maven に構成させることができます。コマンド ラインから次のコマンドを実行するだけです。

mvn eclipse:eclipse

.classpathその後、Maven は、POM で定義されたすべての依存関係 (推移的な依存関係を含む) をファイルに正しく入力します。次に、Eclipse でプロジェクトを更新すると、すべての赤い十字が消えるはずです (うまくいけば...)。

于 2012-08-09T11:18:30.350 に答える
0

エラーを正確に追跡する方法は?直し方?

呼び出す

mvn clean compile -e

このエラーを修正するのに役立つエラースタックトレースが表示されます

于 2012-08-09T09:20:46.533 に答える