私はEclipse用のMaven 2プラグインとしてm2eclipseを使用しています。私はMavenが初めてなので、検索しても解決策が得られませんでしたが、私の間違いは単純かもしれません。コマンドラインからmavenを実行すると、正常にビルドされます。ただし、既存の Maven プロジェクトとしてインポートするか、mvn eclipse:eclipse を使用してからインポートすると、POM ファイルに見つからないアーティファクトが取得され、Maven の依存関係がまったく読み込まれなくなります。
奇妙なのは、2 つのプロジェクトがあり、どちらも親の pom パッケージ プロジェクトの子です。1 人の子がすべての Maven 依存関係を読み込みますが、もう 1 人の子は何も見つけられず、pom ファイルにアーティファクトがないと言います。繰り返しますが、コマンド ラインから問題なくインストールおよびパッケージ化できます。
プロジェクトを問題なく動作する netbeans にロードしようとさえしましたが、Eclipse を使用する必要があります。
これを修正する方法についてのアイデアはありますか?
アップデート
ディレクトリ構造、pom ファイルのレイアウト:
--main
--pom.xml (is a pom package that is the parent to two other projects)
--ProjectA
--pom.xml
--ProjectB
--pom.xml
Main は、ProjectA と ProjectB の両方の親プロジェクトです。ProjectB には依存関係として ProjectA があります。明らかに、m2eclipse はその依存関係に満足していません。ProjectB の pom ファイルから ProjectA の依存関係を削除するとすぐに、すべての Maven 依存関係が Eclipse によって検出されます。
- com.company.myproj:app:6.6.0:jar Missing: ---------- 1) com.company.myproj:main:pom:${myproj.version} ---------- 1 required artifact is missing. for artifact: com.company.myproj:main:pom:$
{myproj.version} from the specified remote repositories: apache-incubating (http://people.apache.org/repo/m2-incubating-repository/, releases=true, snapshots=true), central (http://
repo1.maven.org/maven2, releases=true, snapshots=false)
ただし、ProjectA にその依存関係を持たせるには、ProjectB が必要です。エラー メッセージは、m2eclipse がリモート リポジトリで ProjectA を探しているようです。プロジェクト A は .m2 ディレクトリにのみ存在する必要がありますが、m2eclipse にそこを参照するように指示する方法がわかりません。
コマンドラインから mvn を使用すると問題なく動作し、前に述べたように、netbeans はプロジェクトと依存関係を正常にロードするため、これは m2eclipse 固有の問題である可能性があると思います。