我使用maven构建基于java的程序。工作正常。但现在我遇到了一个问题,要求我为其他用户构建一个基于相同源代码的修订版本(例如,不同的软件名称和不同的资源文件)。
有没有人知道怎么做?
答案 0 :(得分:6)
您需要使用个人资料。在这样的答案中解释起来有点复杂,但实质上,您将在POM中为您想要做的不同构建创建不同的配置文件。您将在构建时选择配置文件,例如使用mvn命令行中的变量定义,并在配置文件中更改您需要更改的任何变量或设置。有更多信息可供here。
答案 1 :(得分:0)
根据项目的类型,最“maven”的方法是将项目拆分为具有多个子项的父项。您的主项目放在一个模块中,每个用户特定的配置都进入一个不同的模块,然后可以依赖于公共代码。
每个用户特定模块都可以拥有自己的资源和独特的配置,这将使生成不同的命名配置变得更容易。它还可以使任何用户特定的编码调整更容易。
答案 2 :(得分:0)
您可以在POM中为要执行的不同构建创建不同的配置文件。
以下是POM.xml的一些示例部分
<!-- Define profiles here and make DEV as default profile -->
<profiles>
<!-- dev Profile -->
<profile>
<id>dev</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<!-- qa Profile -->
<profile>
<id>qa</id>
<properties>
<env>qa</env>
</properties>
</profile>
<!-- prod Profile -->
<profile>
<id>prod</id>
<properties>
<env>prod</env>
</properties>
</profile>
</profiles>
...
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.4.3</version>
<executions>
<execution>