可以将ear模块定义为多模块项目中的父模块吗?
我有以下的项目结构。
它们都应该产生耳朵来进行部署。
我不想有一个为父模块的虚拟模块。我希望将全局依赖项和配置打包到现有的项目中。
哪个模块/pom是正确的一个放置所有这些一般信息。这个波姆就会成为我的父母。
发布于 2012-08-06 11:31:59
你似乎有两种不同的担忧。
我猜想A是一个jar (提供服务或公共类),B和C是战争,不是吗?
如果项目真的是连接在一起的,我的意思是,您一起构建它们,同时交付它们,当您促进发布时,您在所有的项目上都这样做,我建议您使用以下结构。我从来没有测试过,所以我不知道是否有缺点。
/parent
+--pom.xml
|
+--/moduleA
| +--pom.xml
+--/moduleB
| +--pom.xml
+--/moduleC
| +--pom.xml
+--/app-ear1
| +--pom.xml
+--/app-ear2
| +--pom.xml
\ 在您收集和共享内部的信息或管理之前,请考虑没有虚拟父项目。
显然,父模块将收集模块和dependencyManagement (以便简化对依赖关系版本的管理)和pluginManagement。它还将包含团队,CI管理等。事实上,它将包含所有共同的信息。
然后,当您想要构建整体时,请在父级上使用mvn包。当您要发布它时,只需执行mvn版本:对父级执行。
如果您想要将它们分开使用/分发(ear 1从一边,ear 2从另一边),那么您可能没有相同的结构。
/corporate
+--pom.xml
/moduleA
+--pom.xml
/parent-1
+--pom.xml
|
+--/moduleB
| +--pom.xml
|
+--/app-ear1
| +--pom.xml
\
/parent-2
+--pom.xml
|
+--/moduleC
| +--pom.xml
|
+--/app-ear2
| +--pom.xml
\公司将由parent1和parent2扩展,在dependencyManagement、pluginManagement和CI等信息的案例1中,它将扮演与母公司相同的角色。考虑一下,在第一种情况下,你们也会这样做。
看看这里:Maven2: Best practice for Enterprise Project (EAR file)。你可能会发现更多的信息。
在这两种情况下,如果您将WTP与启示录:Multi Module Maven2 Project with WTP一起使用,请小心。
https://stackoverflow.com/questions/11825443
复制相似问题