Gradle 7.0 发布,自动化构建工

写了个寂寞 2021-04-12 16:18:21 ⋅ 875 阅读

Gradle 7.0 现已发布。Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的项目自动化构建工具,支持依赖管理和多项目,类似 Maven,但比之简单轻便。它使用一种基于 Groovy 的特定领域语言来声明项目设置,而不是传统的 XML。

该版本默认启用文件系统监视功能,使你的增量构建速度更快;扩展了对使用 Java 16 构建项目的支持;并增加了对在使用 Apple Silicon 处理器(如 M1)的 Mac 上构建的支持。

同时,此版本还引入了 centralized dependency versions 的功能预览,启用构建验证错误,使你的构建更加可靠,并使其更容易为设置文件创建 convention plugins。且许多孵化中的功能已经晋升为稳定版。具体更新内容如下:

性能提升

更快的增量构建

文件系统监视是 Gradle 6.5 中的一项可选功能,在 Gradle 6.7 中被标记为生产就绪。 当启用时,Gradle 会在两次构建之间将它所了解到的文件系统保存在内存中,并在每次构建时跳过从文件系统中读取。这大大减少了确定自上一次构建以来发生了什么变化所需的磁盘 I/O 量。

现在,在所有支持的平台上,包括最新版本的 Windows、Linux 和 MacOS,都默认启用了这项优化。有关更多详细信息,可参见文档

Android 项目中更快的增量更改

此版本包含了对 Android 项目中增量更改的性能改进,特别是那些使用 Jettifier 的项目。例如,与 Gradle 6.8 相比,Santa Tracker Android 项目中的 non-ABI 更改的 assembleDebug 提高了 12%:

忽略空 buildSrc 项目

Gradle 现在将忽略一个空的 buildSrc 目录,只有在检测到构建文件和/或源文件时才会生成一个 buildSrc.jar。当检测到一个空的 buildSrc 目录时,有两个好处:

  • :buildSrc:* 任务将不会被不必要地执行。
  • 空的 buildSrc.jar 不会被添加到 buildcript class path 中,避免了可能造成的 cache misses。

新功能和可用性改进

  • 对 Apple Silicon 的原生支持
  • 支持 Java 16
  • Centralized dependency versions
  • 类型安全的 project accessors
  • Groovy 3 升级
  • Dependency locking 改进
  • 在 plugins block 中使用 dynamic 版本

更多详情可查看更新说明:https://docs.gradle.org/7.0/release-notes.html


全部评论: 0

    我有话说:

    「开源资讯」Gradle 6.7 发布,增量构建改进

    Gradle 6.7 已经发布Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的项目自动化构建工具,支持依赖管理和多项目,类似 Maven,但比之简单轻便。它使用

    Gradle 5.0 RC2 发布,支持 Java 11、Kotlin DSL 生产就绪

    Gradle 5.0 RC2 发布了,Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的项目自动化构建工具,支持依赖管理和多项目,类似 Maven,但比之简单轻便。

    Gradle 6.8 发布,禁用 TLS v1.0 和 v1.1 协议

    Gradle 6.8 已经发布Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的项目自动化构建工具

    Gradle 6.7.1 发布,修复 6.7 中的严重错误

    这是 Gradle 6.7 的修补版本,修复了 Gradle 6.7 中的几个严重错误,更新内容包括: 修复反向移植工具链错误的问题 修复安装 Openjdk-11 后,Java 工具链在

    phpPgAdmin 7.13.0 发布

    phpPgAdmin 7.13.0版本于今天发布。该版本涉及以下更新: 增加对Postgres 13的支持; 增加对Postgres 14的暂时适配; 升级Jquery库为jquery 3.4.1

    CKEditor 5 v26.0.0 发布:具有可扩展的构建、内联部件样式和注释指南

    CKEditor 5 v26.0.0 已经发布,本次更新包括支持创建一个定制的编辑器构建、Mac上的按键管理、设计内联部件、编辑器占位符和一组关于使用协作特性注释的新指南等内容。 通过 DLL

    Apache Shiro 1.7.0 发布,支持 HTTP 严格传输安全 HSTS

    Shiro 1.7.0 发布,此版本包括自 1.6.0 版本以来解决的 7 个问题,现在可以从 maven 中央仓库下载使用。 <dependency>   <

    curl 7.75.0 发布,占用内存更低

    curl 7.75.0发布。此版本没有包含安全修复,主要是添加了部分新特性,其中包括: 为命令行工具添加--create-file-mode参数,在协议中,curl 需要告诉远程

    Zig 0.7.0 发布,想要替换 C 的编程语言

    Zig 0.7.0发布,这是一门通用编程语言,专为稳定性、可维护性和性能而设计,追求替代 C 语言在系统编程上的最佳地位。Zig 具有以下值得关注的特性: 手动管理内存 与 C 语言

    「尝鲜」SpringBoot 快速整合Swagger 3.0

    第一步:Maven引入Swagger3.0 starter依赖 Maven项目中引入springfox-boot-starter依赖: <dependency> <

    Micronaut 2.4.0 发布,基于 JVM 的微服务应用框架

    ,Micronaut 2.4.0 正式发布,本次更...

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

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

    Pulsar Flinkconnector 2.7.0 正式发布,支持最新版 Pulsar 与 Flink

    Pulsar Flink 连接器 2.7.0 支持 Apache Pulsar 2.7.0 和 Apache Flink 1.12 中的功能,并且与 Flink连接器 和Flink 消息格式完全兼容

    Spring Cloud Data Flow 2.7.1 发布

    Spring Cloud Data Flow 2.7.1 发布了。Spring Cloud Data Flow 是构建数据集成和实时数据处理流水线的工具包。 主要更新内容 UI 错误修复

    gulp.js 基于流的自动化构建工具,对小程序代码进行打包

    gulpjs是一个前端构建工具,与gruntjs相比,gulpjs无需写一大堆繁杂的配置参数,API也非常简单,学习起来很容易,而且gulpjs使用的是nodejs中stream来读取...

    【开源资讯】phpMyAdmin 4.9.7 和 5.0.4 发布,可视化 MySQL 管理后台

    phpMyAdmin 4.9.7 和 5.0.4 发布了。phpMyAdmin 是一个非常受欢迎的 web MySQL 数据库管理工具。它能够创建和删除数据库,创建/删除/修改表格,删除/编辑/新增

    Apache Wicket 9.3.0 发布,Java Web 开发框架

    Apache Wicket 9.3.0 现已发布。Wicket 是一个 Java 语言的 Web 开发框架,与 Struts、WebWork、Tapestry 相类似,其特点在于对

    Guns 7.0 发布,更简洁的后台管理系统

    新版Guns基于SpringBoot全面升级,完美整合springmvc + shiro + mybatis-plus + beetl! 在不用写xml配置(V1.0)的基础上进一步简化项目配置,让

    Elasticsearch 7.9.3 发布

    Elasticsearch 是一个分布式的 RESTful 风格的搜索和数据分析引擎,能够解决越来越多的用例。Elasticsearch 7.9.3 已经发布,本次更新信息如下: BUG 修复