jenkins 怎么解决maven依赖
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jenkins 怎么解决maven依赖相关的知识,希望对你有一定的参考价值。
参考技术A 因为maven在下载某个jar的时候,会把依赖的jar也下载下来,所以产生了重复。你可以把某个dependy里面,排除掉重复的jar。 那些jar重复了, 可以双击pom.xml , 然后看 dependency hierarchy Tab里面 参考技术B 一种方法是,可以在B项目设置中配置构建触发器,在A项目完成后触发,这样每次只构建A项目即可 Build after other projects are built使用 Jenkins 上快照依赖项的先前发布版本发布项目
【中文标题】使用 Jenkins 上快照依赖项的先前发布版本发布项目【英文标题】:Release project with previous release version of a snapshot dependency on Jenkins 【发布时间】:2017-11-17 13:46:23 【问题描述】:我看到了一些类似的问题,但没有找到任何可行的解决方案。现在它已经找到解决它的一天。 那么问题来了。
我有一个项目,我想通过 Jenkins 工作发布 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 发布插件不允许快照版本的依赖关系。
谁能告诉我
-
在 Jenkins 中将快照版本替换为以前版本的依赖项是否可行?
如果可能,我们该怎么做?
提前致谢。
【问题讨论】:
你需要先释放包含依赖的项目,然后你可以释放另一个依赖它的项目... 有什么方法可以让我们自动化这个,因为如果我想发布项目的依赖之前发布的版本? 【参考方案1】:您不能对版本中的“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。
【讨论】:
以上是关于jenkins 怎么解决maven依赖的主要内容,如果未能解决你的问题,请参考以下文章