使用以前发布的Jenkins快照依赖版本发布项目

时间:2017-11-17 13:46:24

标签: maven jenkins maven-plugin maven-release-plugin

我见过一些类似的问题,但没有找到任何可行的解决方案。现在它是一天寻找解决它。 所以,下面是问题所在。

我有一个项目,我想通过詹金斯的工作释放maven。但是这个项目具有快照依赖性。

<dependency>
    <groupId>com.domain</groupId>
    <artifactId>market</artifactId>
    <version>121b4-SNAPSHOT</version>
</dependency>

以下是我的项目信息:

    <groupId>com.domain.tools</groupId>
    <artifactId>cash</artifactId>
    <name>Cash Flow</name>
    <version>123b4-SNAPSHOT</version>

当我尝试使用以下命令手动发布项目时:

mvn release:clean release:prepare release:perform

我得到了解决依赖快照版本的提示,所以我只输入之前发布的'market'版本 - 121b3然后一切正常。

但是当我尝试设置Jenkins作业来发布项目时,问题是如何解决Jenkins上的快照依赖(因为我们在手动时得到提示),因为maven发布插件不允许快照版本的依赖关系。

有人可以告诉我

  1. Jenkins是否可以用以前版本的依赖项替换快照版本?
  2. 如果可能,我们该怎么做?
  3. 提前致谢。

1 个答案:

答案 0 :(得分:0)

你不能对“&#39; SNAPSHOT”这个词有任何依赖。在版本中。

你必须要么

1)发布123b4-SNAPSHOT,以便它在Jenkins使用的共享存储库中

2)拥有一个嵌入式存储库(您有一个添加到项目中的迷你存储库)并将123b4-SNAPSHOT重命名为123b4,请参阅here以获取示例

 <repositories>
    <repository>
      <id>in-project</id>
      <name>In Project Repo</name>
      <url>file://${project.basedir}/libs2</url>
    </repository>
  </repositories>

我建议选项1。