建议为多个项目设置maven

时间:2012-01-11 14:56:14

标签: java spring maven ant

我正在查看一些开源项目并注意到它们的设置如下:

/app1/pom.xml
/app1/app1-mod1/pom.xml
/app1/app1-mod2/pom.xml
/app1/app1-mod3/pom.xml

所以有一个主pom,然后所有的模块都有pom.xml。

所以在我的情况下,我有以下内容:

1. spring mvc application
2. spring mvc application
3. shared model/db layer

所以我想我应该遵循多个pom.xml设置?

如果是,我将如何在#2和#1之前建立#3。

我应该选择蚂蚁来执行实际构建吗?

你们知道的任何教程都会引导我完成这个过程吗?

我在IntelliJ中编码。

2 个答案:

答案 0 :(得分:3)

Maven反应堆将以适当的顺序构建模块,您可以通过对它们进行排序来告诉它您认为最佳方式。

我有类似的项目设置:

<artifactId>root</artifactId>
<packaging>pom</packaging>
<name>Root</name>

<modules>
    <module>event</module>
    <module>admin</module>
    <module>public</module>
</modules>

然后由其他模块用作父项。事件库用于管理和公共webapp模块。在webapp模块中定义如下内容:

<dependencies>
    <!-- Events -->
    <dependency>
        <groupId>${project.groupId}</groupId>
        <artifactId>event</artifactId>
        <version>${project.version}</version>
    </dependency>
</dependencies>

来自root的 mvn install 工作得很漂亮。

答案 1 :(得分:2)

Maven会自行计算dependencies你设置你的POM所以 模块#1和#2都依赖于#3 maven将首先构建#3而不需要任何其他配置。

发布插件也需要您使用的布局(多模块)。

另见A Multi-module Project