【发布时间】:2019-08-26 13:55:51
【问题描述】:
我想为某些依赖项的版本使用一个范围。但我真的不明白它应该如何为我的案例定义。
这是查找的结果 - maven-metadata-nexus.xml 文件。
<versioning>
<latest>0.1.0-SNAPSHOT</latest>
<versions>
<version>0.0.13-SNAPSHOT</version>
<version>0.0.14-SNAPSHOT</version>
<version>0.0.15-SNAPSHOT</version>
<version>0.0.16-SNAPSHOT</version>
<version>0.0.17-SNAPSHOT</version>
<version>0.1.0-SNAPSHOT</version>
</versions>
<lastUpdated>20190826092951</lastUpdated>
</versioning>
我想导入最新的 0.1.x 依赖,所以我认为这样写 range 就可以了
<dependency>
<groupId>my.group.id</groupId>
<artifactId>my-artifact</artifactId>
<version>[0.1, 0.2)</version>
</dependency>
但是,maven 说我的工件没有可用的版本。
将范围定义为[0.1.0-SNAPSHOT, 0.2) 解决了这个问题,但我真的不明白为什么我需要对边界如此具体,这是否是一个好习惯。定义此类范围的正确方法是什么?
【问题讨论】:
-
存在版本范围,但过时了。如今,借助versions-maven-plugin 进行显式更新更为常见。
-
@JFMeier 谢谢,它看起来确实更好。你能推荐一些在版本 maven 插件的帮助下发布工作流的文章吗?
标签: java maven dependencies dependency-management