8

私はMavenが初めてです。私は新しいプロジェクトを与えられ、それは次の構造を持っています。

Data_Res
  |
  ---res-search
  |     |
  |     -----res-hast
  |     |       |
  |     |       ------src/main....
  |     |       |
  |     |       ------pom.xml
  |     -----res-haster
  |     |       |
  |     |       ------src/main....
  |     |       |
  |     |       ------pom.xml
  |     |
  |     ----pom.xml
  | 
  |
  ---pom.xml
  ---sonar_pom.xml

ルート pom.xml にモジュール セクションが表示されません。しかし、sonar_pom.xml にモジュール セクションが表示されます。すべての子ノードが含まれているわけではありません。フォルダー/プロジェクトに 2 つの pom を含めることはできますか? または、それらを個別に実行できますか?

  1. これをどう解釈するか。サブモジュールまたは個々のプロジェクト? 調べる指標はありますか?
  2. mvn clean installroot pomで実行するように言われました。私はそれをしました。サブフォルダーの 1 つに対するすべての依存関係が提供されているかどうかを確認するように求められました。これらを確認する方法は?ホーム ディレクトリの .m2 フォルダーの下にいくつかのファイルが表示されます。
  3. これをビルド/パッケージ化するにはどうすればよいですか? サブフォルダーの 1 つに取り組んでいます。それが別のプロジェクトなのかサブモジュールなのかはわかりません。その場合、そのフォルダーに直接移動して、そのフォルダーから実行できmvn package / buildますか (pom.xml が存在します)。
4

2 に答える 2

11

ゴールを実行すると、(e.g mvn install)maven は実行のフォルダーで pom.xml をチェックします。pom.xml が存在する場合は、そのフォルダー (つまりプロジェクト) のゴールを実行します。 、この操作は再帰的です。

フォルダー/プロジェクトに 2 つの pom を含めることはできますか?

はい、プロジェクトに複数のpomを使用できますが、代替pomファイルを使用する場合、デフォルトは pom.xml です-f。ケースで代替pomファイルに言及するために使用できますmvn -f sonar_pom.xml clean install.pomファイルはソナーに使用される可能性があります.

これをどう解釈するか。サブモジュールまたは個々のプロジェクト? 調べる指標はありますか?

すべてのプロジェクトには pom.xml があり、親とすべての依存関係がローカルの Maven リポジトリに存在する場合、独立してビルドできます。

root pom で mvn clean install を実行するように言われました。私はそれをしました。サブフォルダーの 1 つに対するすべての依存関係が提供されているかどうかを確認するように求められました。これらを確認するには?ホーム ディレクトリの .m2 フォルダーの下にいくつかのファイルが表示されます。

依存関係を確認するには、ローカルの Maven リポジトリを確認します。デフォルトは です~/.m2/repositoryが、設定は settings.xml で変更できます。~/.m2/settings.xmlファイルが存在しないかどうかを確認します。<maven_home>/conf/settings.xmlコピー先でグローバル設定を見つけることができます。~/.m2/その後、オーバーライドできます。次のタグを確認してください。<localRepository>/path/to/local/repo</localRepository>

これをビルド/パッケージ化するにはどうすればよいですか? サブフォルダーの 1 つに取り組んでいます。それが別のプロジェクトなのかサブモジュールなのかはわかりません。その場合、そのフォルダーに直接移動して、そのフォルダーから mvn package/build を実行できますか (pom.xml が存在します)。

先に述べたようにmvn package、親とすべての依存関係がある場合は、モジュールで実行できます。2つの方法を組み合わせてこれらを取得できます

  1. mvn installまたはを使用してシステムにインストールします
  2. リモートリポジトリの使用
于 2013-05-27T06:45:55.897 に答える