Maven:依赖项中的任务版本

Maven: Mission versions in dependencies

我使用 Maven 大约 1 年(Jdk 11,Mvn 3.6)。

当我查看我尝试使用的库时,大多数时候在 "Getting started" 或文档中存在依赖关系。所以你可以简单地把它复制到你自己的 pom.xml.

但其中大部分都没有版本元素。

当我执行 mvn-compile 时,由于缺少 dependencies.dependency.version.

而出现错误

如果我手动添加一个版本(在 Mavens 存储库中获取它之后),那么一切都可以。

那是为什么?

我的Maven是不是太旧了,新版本支持省略版本? 最好的做法是因为有人知道查找版本吗?

任何依赖管理工具,包括Maven,都要求您指定依赖版本。这是为了避免歧义并且不破坏您的项目,因为未来的版本可能会删除/修改您可能依赖的功能。您可以获得一些额外的信息 here and here.

文档可能未指定版本,因为文档可能做出一些假设:

  1. 最终用户(您)已经知道如何查找可用版本。
  2. 最终用户(您)可能希望使用最新版本,无需为发布的每个版本更新文档。