首页
看点啥
插画图片
首页 电脑数码 Maven 3.10.0-rc-1发布:默认启用可复现构建

Maven 3.10.0-rc-1发布:默认启用可复现构建

2026-08-06 0

Apache Maven 团队2026年7月9日发布Maven 3.10.0-rc-1,3.10分支正式进入候选版本阶段。从最新发布历史记录来看,这个版本的运行要求仍然是Java 8,配套的独立发布说明和参考文档都已经上线。和3.9系列相比,本次候选版直接把Resolver 2.x、默认可复现构建以及粒度更细的更新策略控制带进Maven 3主线,其中有一项依赖类路径顺序的改动,打算升级的用户需要提前做好验证。

图片来源:Apache Maven 最新发布说明

可复现构建改为默认启用

发布说明列出的所有重要变化里,默认开启可复现构建是最容易影响现有发布流程的一项。除此之外Maven还升级到Resolver 2.x,支持定义用户级和安装级扩展,也正式明确了session.topDirectory、session.rootDirectory 与 project.rootDirectory 等属性的定位。版本范围过滤、用户自定义重定位和传递式依赖管理也都属于新增功能,给复杂场景下的依赖解析提供了更多控制手段。

命令行的更新策略也做了进一步拆分,新增选项可以只强制更新构件,或者只强制更新元数据,构件和元数据的更新策略现在支持分别指定。针对大型多模块项目,构建失败后的reactor摘要现在只会展示失败模块,不会堆满大量成功模块的信息干扰问题定位。插件API这边升级到SLF4J 2.x,彩色消息服务和JavaToolchain里的Java版本信息的可用性也做了提升。

图片来源:Apache Maven 最新参考文档

依赖类路径顺序变化需要重点回归

最新把依赖类路径排序变化列为从Maven 3.9迁移时最容易引发故障的核心调整。新版本把原来深度优先的pre-order规则,改成了广度优先的level-order规则,和Maven 4、Resolver 2.x的默认行为对齐。如果你的项目之前依赖旧的排序结果,可以临时通过aether.system.dependencyVisitor参数恢复旧逻辑,但这个参数更适合用来做兼容排查,不要长期靠它回避依赖冲突问题。

新版Super POM还删掉了早就弃用的release-profile和相关插件管理内容,用到这些的项目需要自行维护对应的配置;另外项目源码与报告输出编码的默认值统一设为UTF-8。目前最新没有公示已知问题,但版本带rc标识就说明它还是正式版上线前的候选构建。生产项目建议先放到隔离流水线里跑一遍,比对完依赖树、测试结果和发布产物没问题,再考虑替换原有稳定版本。

喜欢(0)

上一篇

电视剧《诱情转驳粤语》剧情说明

电视剧《诱情转驳粤语》剧情说明

下一篇

Maven 3.9.16发布:修复插件前缀解析问题

Maven 3.9.16发布:修复插件前缀解析问题
猜你喜欢