发行说明 – Maven 3.6.1
Apache Maven 团队宣布发布 Maven 3.6.1
Maven 3.6.1可供下载。
Maven 是一个软件项目管理和理解工具。基于项目对象模型 (POM) 的概念,Maven 可以从一个中心位置管理项目的构建、报告和文档。
核心版本独立于可用的插件。插件的进一步版本将单独制作。有关更多信息,请参阅插件列表。
我们希望您喜欢使用 Maven!如果您有任何问题,请咨询:
- 网站:https ://maven.apache.org/
- maven 用户邮件列表:https ://maven.apache.org/mailing-lists.html
- 参考文档:https ://maven.apache.org/ref/3.6.1/
本新闻稿的记者和贡献者
我们非常重视这些非提交者的贡献,因此本节将重点关注这些人。已修复问题的描述可在这些发行说明的末尾找到。
本新闻稿的问题记者:
- MNG-5705 Ondra Žižka
- MNG-5965马蒂亚斯·施马尔茨
- MNG-6059安德烈亚斯·塞维
- MNG-6159克里斯蒂安·艾斯莱特纳
- MNG-6213金权
- MNG-6256克里斯托夫·埃策尔
- MNG-6261大卫·韦斯
- MNG-6262基因史密斯
- MNG-6346帕特里克·杰策
- MNG-6374罗汉帕迪
- MNG-6495艾略特·鲁斯蒂·哈罗德
- MNG-6506安德烈亚斯·维森
- MNG-6526奥拉夫·奥托
- MNG-6529迈克尔·伊斯特拉
- MNG-6530迈克尔·伊斯特拉
- MNG-6533迈克尔·伊斯特拉
- MNG-6543罗曼·曼尼-布考
- MNG-6558盖伊品牌
- MNG-6577罗汉帕迪
- MNG-6591奥拉夫·奥托
- MNG-6605 Gunnar Wagenknecht
- MNG-6618维亚切斯拉夫·亚库宁
此版本的代码贡献者:
- MNG-6374 Gabriel Belingueres(间接通过 plexus-utils PR)
- MNG-6529迈克尔·伊斯特拉
- MNG-6530迈克尔·伊斯特拉
- MNG-6558盖伊品牌
- MNG-6261 Fabiano C. de Oliveira
- MNG-6533迈克尔·伊斯特拉
非常感谢所有记者和投稿人的时间和支持。
(如果我们错过了提及,请向开发人员列表发送电子邮件)。
初步测试人员
感谢以下初步测试人员:
- 加布里埃尔·贝林格勒斯
- 弗朗索瓦·帕蓬
- 埃里克·利利亚
已知的问题
- 在上传到中央存储库的POM 结构控制期间,尚未接受URL 继承的新属性(请参阅用户可见更改) :请参阅MVNCENTRAL-4841以跟踪进度
- 如果您使用 Maven 报告,您可能会收到如下所示的异常:
[INFO] Scanning for projects...
[ERROR] Internal error: java.lang.NullPointerException -> [Help 1]
org.apache.maven.InternalErrorException: Internal error: java.lang.NullPointerException
at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:120)
...
Caused by: java.lang.NullPointerException
at org.apache.maven.model.plugin.DefaultReportingConverter.convert (DefaultReportingConverter.java:243)
...
这是由使用<reportSet>..</reportSet>
不包含<report></report>
元素的 a 引起的。
暂时可以通过<report></report>
在<reportSet></reportSet>
.
已创建 MNG-6636 问题以跟踪 Maven 3.6.2 中的修复。
有关更改的概述
-
已修复导致插件目标多次执行的问题,这与使用并行构建选项(如
mvn plugin:goal -T 4
. 这导致重复执行阶段。这已通过MNG-5965修复。 -
与MNG-5705等并行构建调用相关的 NullPointerException
mvn -T 1C clean javadoc:aggregate
-
已发现与WAGON-537相关的与工件转移相关的性能问题。它已通过更新Maven Wagon 3.3.1得到解决。
-
像这样调用 Maven 脚本时出现了问题:
mvn -f ..
-
与破坏某些 IDE 的 Maven Resolver API 相关的问题(例如https://youtrack.jetbrains.com/issue/IDEA-201282);这已由MNG-6538修复。
-
与 EventSpy MNG-6558上 ToolchainsBuildingResult 缺少事件相关的问题。
-
与 Mojos 中支持 Java 9+ 相关的问题
ClassLoader.findClass(String moduleName, String name)
。这已通过MNG-6543修复。 -
已使用MNG-6571改进了内存消耗。
-
与复杂多模块构建的 3.5.0 中的相对父 POM 分辨率相关的问题已通过MNG-6261修复。
-
org.slf4j.event.Level 缺少导出已使用MNG-6618完成
用户可见更改
- Maven 现在有一个选项可以在交互模式下下载/上传时抑制传输进度。
mvn --no-transfer-progress ....
或简而言之:
mvn -ntp ... ....
<project child.project.url.inherit.append.path="false">
<url>...</url>
<scm child.scm.connection.inherit.append.path="false"
child.scm.developerConnection.inherit.append.path="false"
child.scm.url.inherit.append.path="false">
<connection>...</connection>
<developerConnection>...</developerConnection>
<url>...</url>
</scm>
<distributionManagement>
<site child.site.url.inherit.append.path="false">
<url>...</url>
</site>
</distributionManagement>
</project>
详细解释可以在Inheritance Assembly和MNG-6059中找到
详细问题清单
错误:
- MNG-5705 - 在 BuilderCommon.handleBuildError(BuilderCommon.java:147) 中并行构建的 NPE
- MNG-5965 - 如果给定多个目标,则并行构建倍增工作
- MNG-5995 - Maven 本身无法在没有 maven-compat 的情况下运行
- MNG-6256 - 如果“-f”路径包含特殊字符,Maven 脚本可能会中断
- MNG-6261 - 3.5.0 中的相对父 POM 解析失败,具有复杂的多模块构建
- MNG-6262 - 在项目解析期间,getCanonicalFile() 的使用不一致
- MNG-6346 - ...此时使用 -f 选项且路径包含括号时出乎意料
- MNG-6374 - 模型构建器因 pom.xml 格式错误而挂起
- MNG-6429 - 集成测试站点发布需要 Java 7(或忽略 javadoc 错误)
- MNG-6495 - ModelResolver 不能为空
- MNG-6505 - child.(xy).inherit.append.path 值应该被继承
- MNG-6506 - Mojos 无法在 Java >= 9 上加载包注释
- MNG-6529 -
ProjectBuilder.build(List<File> projects, boolean, ProjectBuildingRequest)
不尊重ProjectBuildingRequest.isResolveDependencies()
- MNG-6530 - 调用之间文件更改时 ProjectBuilder 中的回归(由 MNG-6311 引入)
- MNG-6533 -
ProjectBuilder.build(list_of_projects,...)
异常报告中不包含 MavenProject - MNG-6543 - 升级 plexus classworld 以支持 Mojos
ClassLoader.findClass(String moduleName, String name)
中的 java 9+ - MNG-6558 - 未在 EventSpy 上发送 ToolchainsBuildingResult 事件
- MNG-6577 - pom.xml:解析 unicode 实体引用时未捕获 IllegalArgumentException
- MNG-6590 - DefaultProjectArtifactsCache java.lang.IllegalStateException:重复的工件解析结果
- MNG-6599 - 当版本是从父级定义时,模型 ID 中的未知版本
改进
- MNG-6059 - 未涵盖重要用例,因为 child.inherit.append.path 影响所有子级
- MNG-6159 - 子路径调整中断 git scm url
- MNG-6213 - Maven 不检查范围值的有效性
- MNG-6481 - 允许使用 Java 11 编译和测试 Maven
- MNG-6513 - 用 IT 中的注释替换过时的 Plexus javadoc 标签
- MNG-6515 - 修复 Java 8 和 11 下的 javadoc 构建错误
- MNG-6520 - 将程序集描述符更新为 2.0.0
- MNG-6522 - 准备 Maven 的核心集成测试套件以使用 Java 12 和 13-ea 进行测试
- MNG-6572 - 对 ComparableVersion 中的小数字使用 int 或 long 而不是 BigIntegers
- MNG-6593 - 超级 pom 的跟踪输入位置
- MNG-6597 - 为插件配置添加输入位置跟踪
- MNG-6600 - 为默认生命周期绑定执行添加输入位置跟踪
- MNG-6601 - 为报告转换注入的站点报告插件添加输入位置跟踪
- MNG-6605 - 允许在交互模式下禁止下载消息
- MNG-6611 - 将 animal-sniffer-maven-plugin 更新到 1.17
希望
- MNG-6571 - Maven 内存消耗问题
任务
依赖升级
完整的变更列表可以在我们的问题管理系统中找到。