在Maven中,依赖项通常设置如下:
<dependency>
<groupId>wonderful-inc</groupId>
<artifactId>dream-library</artifactId>
<version>1.2.3</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
现在,如果您正在使用频繁发布的库,不断更新<version>标记可能有些烦人.有没有办法告诉Maven始终使用最新的可用版本(来自存储库)?
例如,我有这个 Maven 依赖项
<dependency>
<groupId>foo</groupId>
<artefactId>bar</artifactId>
<version>[1.0.0, 1.1.0)</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
我试图实现的目标是包含所有补丁(1.0.x)版本,包括快照版本(以促进测试和集成),1.0.1-SNAPSHOT等等1.0.2。
但是,设置这样的版本范围[1.0.0, 1.1.0)将包括诸如1.1.0-alpha、1.1.0-beta和1.1.0-SNAPSHOT之类的版本,这是我不想要的。
有没有更好的方法,除了将版本指定为 之外[1.0.0, 1.1.0-alpha),这实际上只会用丑陋的版本号污染 POM。
(这不是关于尝试使用最新版本,而是关于如何优雅地排除alpha,beta并snapshot在独占版本范围内构建)