如何使用war包装选项创建maven父项目

时间:2011-10-24 12:37:19

标签: maven module parent-child pom.xml multiple-projects

我想创建三个项目。其中一个是父项目,另外两个是模块。

在这个网站http://maven.apache.org/plugins/maven-eclipse-plugin/reactor.html上解释了如何做。它说父母的包装类型应该是pom。在我看来,这不是一个好选择。我想将现有项目用作父项目,并创建另外两个模块。

是否可以将我现有的项目(战争)定义为父项?

2 个答案:

答案 0 :(得分:3)

我怀疑使用父项目的唯一方法是将父包装定义为pom。它在maven网站上清楚地说明了,就像你也指出的那样。我真的看不出你想要用你的场景实现什么,因为在我看来,这两个模块不可能作为战争的依赖存在......

我强烈建议您创建父pom,在其下添加其他三个模块(另外两个模块和war / webapp模块)。通过单独的父级,您还可以更好地控制模块构建顺序,依赖关系管理,全局属性等。

答案 1 :(得分:1)

<groupId>com.biz</groupId>
<artifactId>app-parent</artifactId>
<packaging>war</packaging>
<version>0.1-SNAPSHOT</version>
<name>app-parent</name>
<dependencies>
//...
</dependencies>

<groupId>com.biz</groupId>
<artifactId>app-child1</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>app-child1</name>

<dependencies>
    <dependency>
        <groupId>com.biz</groupId>
        <artifactId>app-parent</artifactId>
        <version>0.1-SNAPSHOT</version>
        <type>war</type>
    </dependency>
</dependencies>

我在使用tomcat插件的eclipse中遇到了autodeploy的问题,但是mvn install(第一个父节点,然后是child)工作正常。