Gradle 7.3 发布,支持 Java 17 和 Scala 3

栏目: 软件资讯 · 发布时间: 4年前

内容简介:Gradle 7.3 版本为 JVM 项目引入了声明性测试套件 API,添加了对使用 Java 17 构建项目的支持,并更新了 Scala 插件以支持 Scala 3。 Gradle 7.3 具体更新内容如下: 升级说明 通过更新你的 Wrapper,将你的构建转...

Gradle 7.3 版本为 JVM 项目引入了声明性测试套件 API,添加了对使用 Java 17 构建项目的支持,并更新了 Scala 插件以支持 Scala 3。

Gradle 7.3 具体更新内容如下:

升级说明

通过更新你的 Wrapper,将你的构建转换为使用 Gradle 7.3。

./gradlew wrapper --gradle-version=7.3

新功能和可用性改进

  • 支持 Java 17

    Gradle 现在支持在 Java 17 上运行和构建。在以前的 Gradle 版本中,在 Java 17 上运行 Gradle 会导致一个错误。从 Gradle 7.3 开始,运行 Gradle 本身和用 Java 17 构建 JVM 项目都被完全支持。

  • JVM 项目中的声明性测试套件

    在测试 Java 和 JVM 项目时,开发者经常需要将测试类分组,将它们组织成可管理的块,这样就可以以不同的频率或在构建管道的不同点上运行它们。

    以前,正确的测试分组需要彻底了解如何修改和连接 Gradle 中的各种领域对象,如 SourceSets、配置和任务。如果你想把测试分成不同的组,你需要了解这些独立的部分如何相互作用。

    在 Gradle 7.3 中,JVM Test Suite Plugin 简化了这种测试组的创建。

  • 支持 Scala 3

    Scala 插件允许用户使用 Gradle 和 Zinc 增量编译器来编译他们的 Scala 代码。Scala 插件现在可以编译 Scala 3 的代码了。所有现有的配置选项在最新的语言版本下仍然可以使用。

    最新版本的 Scala 3 在保持与大部分现有 Scala 2 代码兼容的同时,也带来了众多功能。

  • 探索 gradle init 的新行为

    当你使用 gradle init 初始化一个新的 Gradle 项目时,Gradle 现在会询问你是否想在构建中尝试新的但不稳定的功能。开发者可以在生成新项目时,通过运行 gradle init --incubating 来询问这一行为。

    目前,用这个选项生成的构建只启用 Test Suites,但其他新的 API 或行为可能会在它们引入时被添加。

  • 取消了对别名(alias)的限制

    在以前的 Gradle 版本中,不可能用后缀 pluginversion和其他受限制的关键字来声明别名。在这个 7.3 版本中,这些限制现在被取消了。

可靠性改进

  • 更强大的文件系统观察

    当运行增量构建时,Gradle 需要了解自上一次构建以来文件系统上有什么变化。为了做到这一点,它尽可能地依赖操作系统的文件系统事件。

    在一些罕见的环境中,这些事件可能不够可靠,并且会导致 Gradle 忽略一些变化。为了防止这种情况,Gradle 现在在启用基于文件系统事件的优化之前,会验证文件系统事件是否及时交付。

  • 允许将单个文件复制到包含不可读文件的目录中

    现在可以在 Copy任务上使用 Task.doNotTrackState()方法,强制 Gradle 忽略目标目录中的内容。

  • 配置缓存中的输入规范化支持

    输入规范化现在能被实验性配置缓存正确跟踪。当配置缓存启用时,任务的最新检查现在会考虑规范化规则,从而产生更快的构建。

  • 插件开发改进

    使用 Build Init 插件初始化新的插件项目也可以从 --incubating选项中受益。

Tooling 改进

  • 文件下载进度事件

    当构建下载许多文件或非常大的文件时(例如在解决依赖关系时),由于缺乏任何日志或控制台输出,Gradle 可能会被认为出现了无响应。

    7.3 版本增加了新的事件,在文件被下载时通知 IDE。这允许 IDE 在 Gradle 运行时和 IDE 导入/同步时显示更好的进度信息。

  • 安全性改进

    antcommon-compress 捆绑库都已更新,以解决报告的漏洞。

修复的问题

  • [#18632] - Test Suite 无法添加版本目录项目
  • [#18622] - KMP 中找不到名称为 'test' 的 SourceSet
  • [#18598] - 修复小的 JvmTestSuitePlugin 文档格式问题
  • [#9095] - 为任务完全禁用缓存和最新检查
  • [#18324] - gradle 依赖于一个不安全的第三方 JAR 包,其中包含 CVE 漏洞
  • [#18239] - 支持 TestNG 和 Spock 作为测试框架选项
  • ……

更多详情可查看:https://docs.gradle.org/7.3/release-notes.html


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Adobe Dreamweaver CS5中文版经典教程

Adobe Dreamweaver CS5中文版经典教程

Adobe公司 / 陈宗斌 / 人民邮电 / 2011-1 / 45.00元

《Adobe Dreamweaver CS5中文版经典教程》由Adobe公司的专家编写,是AdobeDreamweavelCS5软件的官方指定培训教材。全书共分为17课,每一课先介绍重要的知识点,然后借助具体的示例进行讲解,步骤详细、重点明确,手把手教你如何进行实际操作。全书是一个有机的整体,它涵盖了Dreamweavercs5的基础知识、HTML基础、CSS基础、创建页面布局、使用层叠样式表、使......一起来看看 《Adobe Dreamweaver CS5中文版经典教程》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具