2009-06-15 26 views
1

私は2つのMavenプロジェクトAとBを持っています。どちらも私は積極的にソースコードを作成しています。プロジェクトAはBに依存しています。プロジェクトAをビルドする場合、リポジトリにBのスナップショット(またはリリース)が存在する必要がありますか?または、プロジェクトBが存在するかどうかを確認するために、Aの親ディレクトリを確認します(私のディレクトリ構造がprojects/A projects/Bのように見えると仮定します)。そしてそれはより良い習慣でしょうか?ありがとう。Mavenの依存関係の解決

ジェフ

答えて

4

Mavenは、デフォルトでは、これはあなたの.m2ディレクトリ(ローカルリポジトリ)とMaven中央リポジトリで、指定したリポジトリの階層以外の場所になりません。

はい、一部のバージョンのBはリポジトリに存在する必要があります。

project/pom.xmlがあるプロジェクトモジュールを調べることもできます。ビルド時には、依存関係のある正しい順序で子AとBも作成しますが、これをあなたが多くの考えを持たずに説明している問題の解決策と見なすべきではありません。それはMavenのリポジトリになりますように関係がthis

+2

m2 eclipseプラグインも作業領域内に表示されます。 –

0

は/奇妙なビルドツールです瓶のための工芸品。誰かがProjectBを構築し、それをartifactoryにインストールしている限り、またはProjectBを(インストールして)ビルドしている限り、ProjectAで利用できるようになります。

これは、ProjectAのpomファイルで依存関係が正しく設定されていることを前提としています。

私は1つのプロジェクトでMavenを使用しましたが、より標準的なビルドツールのためにantに戻っていきます。それは本当に奇妙なアヒルです。

0

Mavenを読んでどのようにMavenでDependency Mechanism作品とどのように親子/サブモジュール/サブプロジェクトを構成する方法についてよく理解を得るために

+0

Mavenがセントラルリポジトリを使用するのはなぜ "奇妙"なのでしょうか?それがうまくいくように設計されています。 – sleske

+0

「ビルドツール」カテゴリの他の一般的なツールと比較して奇妙だと思います。確かに私にとっては直感的ではなかったし、私は4-5のビルドシステムを使った。 – Kieveli