【问题标题】:how to specify final jar file name from command line in multi module environment如何在多模块环境中从命令行指定最终的 jar 文件名
【发布时间】: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。

标签: maven jenkins jar pom.xml


【解决方案1】:

您好,一个潜在的解决方案可以满足您的要求 - 创建不同的 jars/wars 或您所做的任何事情,就是引入配置文件。通过在 jenkins 的特定工作上调用每个配置文件,您可以配置不同的插件或依赖项。见here

【讨论】:

猜你喜欢
  • 2016-08-12
  • 2020-01-11
  • 1970-01-01
  • 2021-08-12
  • 2013-08-27
  • 1970-01-01
  • 2014-08-25
相关资源
最近更新 更多