Apache Maven 3.9.0 发布,项目管理和构建工具

来源: OSCHINA
2023-02-09 07:06:13

Apache Maven 3.9.0 现已发布。Apache Maven 是一个项目管理和构建工具。基于项目对象模型(POM)的概念, Maven 可以从中心位置管理项目的构建、报告和文档。

此版本更新内容如下:

Sub-task

  • [MNG-7019] - 当配置文件丢失时也在 start 时通知
  • [MNG-7447] - 通过使用 Stream API 进行多项改进

Bug

  • [MNG-5222] - Maven 3 不再记录有关已弃用插件的警告参数。
  • [MNG-6965] - 扩展突然有了 org.codehaus.plexus:plexus-utils🏺1.1 在他们的类路径上
  • [MNG-7055] - 使用 MINSTALL/DEPLOY 3.0.0-M1+ 不会将插件信息写入 maven-metadata.xml
  • [MNG-7106] -VersionRange.toString() 产生的字符串无法用 VersionRange.createFromVersionSpec()解 析出相同的下限和上限。
  • [MNG-7131] - maven.config 不处理其中包含空格的参数
  • [MNG-7160] - 扩展和类加载器:给定扩展类型的结果差异
  • [MNG-7316] - REGRESSION:MavenProject.getAttachedArtifacts() 是只读的
  • [MNG-7352] - org.apache.maven.toolchain.java.JavaToolchainImpl 应该是公共的
  • [MNG-7413] - 修复报告插件、分发库和配置文件构建方面的 POM 模型文档混乱问题
  • [MNG-7425] - Maven 工件下载有时会导致本地仓库中出现空的 zip 文件
  • [MNG-7432] - [REGRESSION] Resolver 会话包含 non-MavenWorkspaceReader
  • [MNG-7433] - [REGRESSION] 多个 Maven 实例在同一个 source tree 上工作可以互相锁定
  • [MNG-7441] - 更新(可选)Logback 版本以解决 CVE-2021-42550
  • [MNG-7448] - 不要忽略 bin/,否则 apache-maven 模块中的 bin/ 不能被读取
  • [MNG-7471] - Resolver 1.8.0 在使用 Resolver 的插件中引入了 binary breakage
  • [MNG-7487] - 修复 forked lifecycle executions 期间的死锁
  • [MNG-7493] - [REGRESSION] 解决子模块之间的依赖关系失败
  • [MNG-7515] - 看不到 apache-maven 模块的 dependency tree 
  • ......

New Feature

  • [MNG-3655] - 允许多个本地存储库
  • [MNG-6270] - 将快照存储在单独的本地存储库中
  • [MNG-7193] - 引入 MAVEN_ARGS 环境变量
  • [MNG-7353] - 添加对“mvn pluginPrefix:version:goal”的支持
  • [MNG-7391] - 添加 Maven Build Cache Extension 所需的 MojoExecution strategy 和 runner
  • [MNG-7454] - 在 Maven 中包含 resolver-transport-http
  • [MNG-7457] - 关于已弃用的插件 Mojo 的警告
  • [MNG-7464] - 关于在配置中为 Mojo 使用只读参数的警告
  • [MNG-7468] - 配置中不支持的插件参数应该被验证
  • [MNG-7486] - 为 boxed log 消息创建多行消息助手
  • [MNG-7612] - 链式本地存储库

Improvement

  • [MNG-6609] - 通过打包激活配置文件
  • [MNG-6826] - 在 FileSizeFormatTest 中删除 JDK8+ 的条件检查
  • [MNG-6972] - 允许访问 org.apache.maven.graph
  • [MNG-7068] - Google Guice/Guava 的主动依赖管理
  • [MNG-7350] - 为 ModelCache 引入一个 factory
  • [MNG-7401] - 使 MavenSession#getCurrentProject() 使用本地线程
  • [MNG-7438] - 在“Configuring mojo xxx with basic configurator”调试信息中添加执行 D
  • [MNG-7445] - 重构一些无用的代码
  • [MNG-7463] - 改进有关 Mojo 中弃用的文档
  • [MNG-7478] - 改进解析器的传输选择
  • [MNG-7501] - 显示 pom.xml 的相对路径
  • [MNG-7520] - 为 Maven 解析器简化 Redisson 和 Hazelcast 的集成
  • [MNG-7547] - 简化 G level 元数据处理
  • ......

Task

  • [MNG-6399] - 将 JDK 最低提升到 JDK 8
  • [MNG-7452] - 删除在 Maven 3.9.X 分支上运行的 JDK7
  • [MNG-7466] - 对齐 Assembly Descriptor NS 版本
  • [MNG-7513] - 解决maven最新版本中发现的commons-io_commons-io漏洞
  • [MNG-7523] - Back port MAVEN_ARGS 至 Apache Maven 3.9.0
  • [MNG-7556] - 清理用户属性和系统属性之间的概念
  • [MNG-7618] - 使用 goalPrefix 而不是 artifactId 来显示 mojos 被执行
  • [MNG-7634] - Revert MNG-5982 和 MNG-7417
  • [MNG-7636] - Partially revert MNG-5868 以恢复向后的兼容性(参见 MNG-7316)

Dependency upgrade

  • [MNG-6878] - 将 Guice 升级到 4.2.3
  • [MNG-7247] - 将 Maven Resolver 升级到 1.7.2
  • [MNG-7453] - 将 Maven Resolver 升级到 1.8.0
  • [MNG-7488] - 将 SLF4J 升级到 1.7.36
  • [MNG-7489] - 将 JUnit 升级到 4.13.2
  • [MNG-7491] - 将 parent POM 为 36
  • [MNG-7499] - 将 Maven 解析器升级到 1.8.1
  • [MNG-7502] - 将 Guice 升级到 5.1.0
  • [MNG-7506] - 将 Maven Wagon 升级到 3.5.2
  • [MNG-7522] - 将 Maven Resolver 升级到 1.8.2
  • [MNG-7530] - 将 Apache Maven parent POM 升级到版本 37
  • [MNG-7586] - 将 Maven Resolver 更新到 1.9.2
  • [MNG-7613] - 将 Apache Maven parent POM 升级到版本 38
  • [MNG-7641] - 将 Maven Wagon 升级到 3.5.3
  • [MNG-7668] - 将 Maven Resolver 更新到 1.9.4
  • [MNG-7675] - 将 Maven Parent 更新为 39

更多详情可查看官方公告

展开阅读全文
精彩评论
感觉maven挺好的 希望以后速度上能赶上gradle
2023-02-09 09:09
2
举报
4 收藏
分享
4 评论
4 收藏
分享
返回顶部
顶部