【发布时间】:2016-03-28 11:32:36
【问题描述】:
我有一个像下面这样的父 pom。
<modelVersion>4.0.0</modelVersion>
<groupId>com.navionics.sonarcharts</groupId>
<artifactId>distributed-task</artifactId>
<packaging>pom</packaging>
<version>1.0-SNAPSHOT</version>
<name>sonarcharts</name>
<url>http://maven.apache.org</url>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.2.4.RELEASE</version>
<relativePath/>
</parent>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<modules>
<module>rabbitMQHandler</module>
<module>DswJni</module>
<module>dataInputHandler</module>
<module>notificationEmulator</module>
<module>modelingWorker</module>
<module>controller</module>
<module>contouringWorker</module>
<module>TimerHandler</module>
</modules>
</project>
我正在使用带有 Master 的 git 存储库并开发分支,并使用父 pom.xml 所在的 jenkins 构建系统。
我在 jenkins 中创建了 2 个工作(一个用于开发,一个用于 master 分支)并使用 mvn clean install 构建系统,该系统生成了一个 jarmodelingWorker-1.0-SNAPSHOT.jar,如 pom 中提到的那样,在这两种情况下都是 pom。 xml 在两个分支中都是相同的。
现在我想生成 2 个不同的 jar 文件,即开发它应该像modelingWorker-1.0-SNAPSHOT.jar 和master 应该是modelingWorker-1.0.jar。
有哪些方法?我想为两个分支使用一个 pom,但我更改了命令行参数。
我的意思是说单个 pom.xml 应该生成 2 个具有 2 个不同名称的 jar 文件。 请帮助我找到 mvn 命令来为多个模块生成不同的 jar 文件。
【问题讨论】:
-
请重新格式化您的问题。读起来非常难……stackoverflow.com/tour
-
阅读或理解是否困难?
-
你使用哪个 maven 版本?
-
我正在使用 Apache Maven 3.0.5
-
你做错事了。 Maven 不能做你所要求的,也不应该做。两个分支不能有一个 pom - 它应该相似(可能)但不一样。 'dev' 分支应该在版本末尾有 -SNAPSHOT,而 master 分支不应该。当你合并到master时,不要合并到master,合并到一个发布分支,在那个分支中更改版本号,然后将它推送到master。