是否可以包含几个较小的pom文件来创建父pom文件。 (例如,我想将报告拆分,将部分构建到自己的poms中并将它们包含在父pom中)以便有效管理它们是否可以拆分maven pom文件?
回答
如果您使用的是Maven 2,则可以简单地创建多个父级别。第一个pom.xml
(pom1)将定义基本属性(例如存储库)。第二个pom.xml
(pom2),其具有pom1作为<parent>
,将定义报告信息。等等......最后,“真实”pom.xml
将继承pom2并将定义它自己的属性。
您可以根据需要创建任意数量的父级别(当然,如果您有5个父级级别,则难以维护)。
注意的Maven 3谈到引进mixin concept,这将允许您在pom.xml
分裂成多个文件,但它看起来像that is not happening now until maven 4
不太。您不能在更小的POM中包含报告和生成部分,您只能使用inherit them from a parent POM。
如果您的POM变得太大,可以(并建议)将您的依赖关系排列成逻辑组。例如,对于一个GWT项目,你可以为所有的持久性与GWT的创建一个新的POM如下:然后
<project>
<groupId>org.yourcompany</groupId>
<artifactId>gwt-dependencies</artifactId>
<version>1.0</version>
<packaging>pom</packaging>
<dependencies>
<dependency>
<groupId>com.google</groupId>
<artifactId>gwt-user</artifactId>
<version>2.0.1</version>
</dependency>
<dependency>
<groupId>org.extjs</groupId>
<artifactId>gxt</artifactId>
<version>2.1.0</version>
</dependency>
<!-- etc -->
</dependencies>
</project>
这些组可以包含在你的主POM。
另请参阅:http://books.sonatype.com/mvnref-book/reference/pom-relationships-sect-pom-best-practice.html –
最近,使用Maven Tiles的选项已成为可能。该插件将允许您执行未由Maven 3提供的混入操作。但是,每个混入都需要一个已发布的瓷砖伪影。
- 1. 是否可以拆分.htaccess文件?
- 2. 是否可以将xslt文件拆分为多个文件?
- 3. 是否可以区分窗口拆分?
- 4. 我们是否可以拆分并加入大文本文件
- 5. 是否可以始终将-Djava.library.path传递给POM文件中的maven测试?
- 6. 是否可以拆分ehcache配置文件?
- 7. 是否可以拆分PHP配置文件php.ini?
- 8. 可以和应该Maven POM指定是否需要Maven 3或更新?
- 9. Maven - 动态pom文件?
- 10. 安装Maven插件时是否可以运行maven artifact?
- 11. 在POM的Arquillian拆封Maven依赖
- 12. 是否可以将Visual Basic(.NET/2010)文件拆分为可读性?
- 13. SoapUI项目文件可以拆分吗?
- 14. 是否可以将多个源文件中的一个JAX-WS服务拆分?
- 15. 当Maven使用分类器构建和伪影时,Maven可以安装POM吗?
- 16. 拆分更新查询是否可以提高性能
- 17. 分拆包含函数是否可以提高PHP性能?
- 18. 什么是maven上的POM?
- 19. Celery任务的定义和实现是否可以拆分?
- 20. 是否需要在pom中指定maven插件的版本?
- 21. vaadin FancyLayouts插件是否有工作的maven pom?
- 22. Maven:您是否必须在POM中声明插件以使用它们
- 23. 定义Maven的配置文件POM
- 24. 获取maven pom文件的名称
- 25. 配置Maven任务段在POM文件
- 26. maven-scala-plugin给出pom文件错误
- 27. Maven的POM不能编译文件
- 28. Sonar和MAVEN POM文件依赖项
- 29. Maven的不正确部署POM文件
- 30. Maven的POM systemProperty文件路径语法
猜测,我将等待Maven 3中的mixin功能 – Joe
@Joshua Maven 3已经可用,即使它是beta版本,它也是相当稳定的。 Maven 3提供了与Maven 2'pom.xml'的100%兼容性。它已被最新版本的NetBeans,m2eclipse或IntelliJ使用。 – romaintaz
Maven 3.0不提供mixins * yet *,但是。 –