これは基本的な質問です。私はMavenマルチモジュール構造にあまり詳しくありません。たとえば、私はWebアプリケーションを持っています。そして、いくつかのモジュールをそれに接続したいと思います(いくつかのサービス)。Webアプリをモジュールの1つにし、他のモジュールに依存させてから実行する必要がありますか?最初はプロジェクト全体を実行できると思っていましたが、このオプションはIDEで非アクティブになっていることがわかり(現在NetBeansを使用しています)、メインモジュール(この場合はWebアプリ)のようなものを実行する必要があると思いました。 )。そうですか?前もって感謝します。
質問する
4924 次
1 に答える
6
マルチモジュール プロジェクトがある場合は、次のような構造が必要です。これは、フォルダー構造によっても表されます。
+-- root (pom.xml)
+--- module-1
+--- module-2
+--- module-war
ルートモジュールには次のようなものが含まれています。
<project ..>
<groupId>com.test.project</groupId>
<artifactId>parent</artifactId>
<version>1.0-SNAPSHOT</version>
<modules>
<module>module-1</module>
<module>module-2</module>
<module>module-war</module>
</modules>
</project>
module-1 では、pom は次のようになります。
<project ..>
<parent>
<groupId>com.test.project</groupId>
<artifactId>parent</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<artifactId>module-1</artifactId>
dependencies for the module
</project>
module-2 では多かれ少なかれ同じように見えます..そして war モジュールでは次のようになります:
<project ..>
<parent>
<groupId>com.test.project</groupId>
<artifactId>parent</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<packaging>war</packaging>
<artifactId>module-war</artifactId>
dependencies for the module
</project>
たとえば、module-1 が module-2 に依存しているなど、モジュール間に依存関係がある場合、module-1 では次のようになります。
<project ..>
<parent>
<groupId>com.test.project</groupId>
<artifactId>parent</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<artifactId>module-1</artifactId>
<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>module-2</artifactId>
<version>{project.version}</version>
</dependency>
..other dependencies..
</dependencies>
</project>
プロジェクトをビルドしてパッケージ化するには、親フォルダーに移動して、単純に
mvn clean package
于 2012-04-29T11:26:35.467 に答える