从maven 3.5.2开始,如果依赖项的版本设置为RELEASE或,则会显示以下警告LATEST:
[警告] <groupId>:<artifactId>:jar的'dependencies.dependency.version'为最新或发布(均已弃用)
如果pom的父版本设置为例如,则不会发出此警告:RELEASE
<parent>
<groupId>com.mydomain</groupId>
<artifactId>base</artifactId>
<version>RELEASE</version>
</parent>
Run Code Online (Sandbox Code Playgroud)
这是故意的,以便我们可以安全地继续依赖RELEASE父pom的版本吗?
我们的用例是为约100个租户托管服务,这些服务需要一组通用的配置文件和一些依赖性管理等。此通用配置在我们的“基础” pom中定义,每个租户的pom都将其用作父级。我们需要所有租户使用父pom的相同版本和最新发布的版本。
我们也遇到过类似的情况:我们的父 poms 被数十名开发人员的数百个项目使用。在 Ant 中,我们有一种类似于 RELEASE 的方法,但现在我们有了明确的版本号。
每个开发人员都需要运行versions:update-parent以获取新版本,否则他/她会留在旧版本中。缺点是使用了多个版本的父 pom,优点是构建稳定性,因为“父 pom 人”不能通过隐式绘制的错误配置破坏构建。
在您的情况下,我建议您考虑是否真的需要每个人都使用相同的版本。如果你真的需要这个,你可能必须使用版本范围作为[1.0.0,).
| 归档时间: |
|
| 查看次数: |
3370 次 |
| 最近记录: |