我目前正在为我们的项目更新maven原型,并希望减少用户在使用此原型时必须提供的信息量。例如,groupId将始终相同。
那么,是否可以在Maven原型中为groupId定义默认值?
答案 0 :(得分:4)
如果您在固定组织中工作,此值不会在每个项目的基础上更改:使用父POM。通过您的存储库分发它(您使用某种中央存储库,即使它只是一个网络驱动器,对吗?)。
加入项目
<artifactId>greattool</artifactId>
<packaging>war</packaging>
<parent>
<groupId>com.example</groupId>
<artifactId>master-parent-pom</artifactId>
<version>0.0.1</version>
</parent>
父POM
<groupId>com.example</groupId>
<artifactId>master-parent-pom</artifactId>
<version>0.0.1</version>
<packaging>pom</packaging>
<description>Parent POM for our projects, specific project type POMs derive from this.</description>
因此项目POM中没有组ID,将使用来自父POM的组ID。当然,您正在使用包含父POM替换组ID,但这很有用,因为您可以根据组织的特定需求进一步自定义Maven。
如果您使用构建和测试服务器,您甚至可以将父级version
设置为-SNAPSHOT
,以自动将父POM中的更改分发到项目POM。