2013-11-20 66 views
3

罐子我已经在这个项目的结构如下:Maven构建父模块

Project - 
     |- Parent // bunch of abstract classes which are used by children 
       |- child_A // depend on abstract classes from Parent 
       |- child_B // depend on abstract classes from Parent 
       |- child_C // depend on abstract classes from Parent 

我想建立既为家长和孩子们罐子为好。所以我最终会得到parent.jar,child _ *。jar。我如何在maven中做到这一点?

+0

父母是树节点,所以需要是'pom'模块。 Pom模块不能产生任何JAR默认 - 这是树的定义。 – MariuszS

回答

4

在Maven的树节点总是与pom型(项目树定义)的项目。 jar类型的模块始终是树生成的产品)。树节点被命名为聚合器项目并且需要'pom'作为包装。

您的项目应该是这样的(3级,你问)

+ Project parent (POM) 
    + Abstract module (JAR) // bunch of abstract classes which are used by children 
    + Implementation Modules (POM) 
    + Module A (JAR) // depend on abstract classes from Abstract 
    + Module B (JAR) // depend on abstract classes from Abstract 
    + Module C (JAR) // depend on abstract classes from Abstract 

摘要模块被配置为依赖于模块A,B和C

+0

愚蠢的问题为什么我不能有树“依赖”结构? – alien01

+0

这是树:)叶是'jar',项目(树)父是'pom'。类型为'jar'的模块不能有子模块。 – MariuszS

+0

是的,这是一棵树。但它只是2级树,我想有3级树。根 - >抽象 - > concreteImpl。 – alien01