热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Gradle7.0发布,支持JDK16

Gradle7.0发布,支持JDK16本文翻译自:Gradle7.0ReleasedwithSupportforJDK16作者:UdayTatiraju可定制的开源构建自动化工具G


Gradle 7.0发布,支持JDK 16



本文翻译自: Gradle 7.0 Released with Support for JDK 16



作者: Uday Tatiraju



可定制的开源构建自动化工具 Gradle
已经 发布了7.0版本
。这个版本支持 JDK 16
、更快的增量构建、改进了验证错误的构建可靠性,以及对带有Apple Silicon处理器的新Mac的本地支持。此外,在早期版本中引入的一些预览功能,如JVM工具链、依赖锁定、依赖验证和对Java模块系统的支持,在7.0版本中都被提升为稳定功能。



之前的Gradle版本无法在最新的JDK 16上运行。然而,在 JVM工具链
的帮助下,通过禁用增量编译,人们仍然可以使用JDK 16构建他们的Java项目。在最新的Gradle 7.0版本中,完全支持在JDK 16上运行Gradle和构建项目。Gradle本身已经升级到在基于Groovy的DSL构建脚本中使用Groovy 3,以完全支持JDK 16。Groovy 3包含了 新特性和功能
,也支持与较新的Java特性的互操作性。注意,Groovy 2和Groovy 3并不完全兼容,因此在升级到Gradle 7.0时可能会出现问题。请查阅Gradle的 升级说明
以获得进一步的指导。



Gradle的每个版本都会继续为 增量构建
带来速度上的改进。这个版本在所有支持的平台上,如Windows、Linux和MacOS,默认启用了优化的文件系统观察功能。该优化帮助Gradle了解构建输入和输出文件的变化,并在两次构建之间将这些信息保留在内存中。这允许Gradle在每次构建时跳过从文件系统中读取信息,从而减少在构建之间确定输入和输出文件变化所需的磁盘I/O量。



另一个构建速度的提高是在这个版本中通过忽略空的** buildSrc
文件夹实现的。在这个版本之前,
buildSrc
文件夹的存在会迫使Gradle执行所有相关的任务,可能会导致构建缓存丢失和额外的性能开销。现在,Gradle将忽略空的
buildSrc
**文件夹,从而跳过执行不必要的任务,避免缓存丢失。



Gradle 7.0版本的一个突出的稳定特性是对 Java模块系统
的全面支持。用户现在可以通过Gradle 构建、测试和运行
Java模块。仅仅是module-info.java的存在,就可以让Gradle推断出你的jar是一个模块,必须放在模块路径上,而不是传统的classpath上。



插件开发的改进,如支持 具有多个变体的插件
,对本地插件使用包含的构建,对安全公告的修复,依赖锁定的改进,实验性的版本目录,以及类型安全的项目访问器是Gradle 7.0中其他一些值得注意的改进和功能。




推荐阅读
  • 如何搭建Java开发环境并开发WinCE项目
    本文介绍了如何搭建Java开发环境并开发WinCE项目,包括搭建开发环境的步骤和获取SDK的几种方式。同时还解答了一些关于WinCE开发的常见问题。通过阅读本文,您将了解如何使用Java进行嵌入式开发,并能够顺利开发WinCE应用程序。 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • 原文地址:https:www.cnblogs.combaoyipSpringBoot_YML.html1.在springboot中,有两种配置文件,一种 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • JavaScript简介及语言特点
    本文介绍了JavaScript的起源和发展历程,以及其在前端验证和服务器端开发中的应用。同时,还介绍了ECMAScript标准、DOM对象和BOM对象的作用及特点。最后,对JavaScript作为解释型语言和编译型语言的区别进行了说明。 ... [详细]
  • 开发笔记:spring boot项目打成war包部署到服务器的步骤与注意事项
    本文介绍了将spring boot项目打成war包并部署到服务器的步骤与注意事项。通过本文的学习,读者可以了解到如何将spring boot项目打包成war包,并成功地部署到服务器上。 ... [详细]
  • 本文介绍了在sqoop1.4.*版本中,如何实现自定义分隔符的方法及步骤。通过修改sqoop生成的java文件,并重新编译,可以满足实际开发中对分隔符的需求。具体步骤包括修改java文件中的一行代码,重新编译所需的hadoop包等。详细步骤和编译方法在本文中都有详细说明。 ... [详细]
  • Spring框架《一》简介
    Spring框架《一》1.Spring概述1.1简介1.2Spring模板二、IOC容器和Bean1.IOC和DI简介2.三种通过类型获取bean3.给bean的属性赋值3.1依赖 ... [详细]
  • Java面试题系列:将面试题中比较经典和核心的内容写成系列文章持续在公众号更新,可巩固基础知识,可梳理底层原理,欢迎大家持续关注【程序新视界】。本篇为面试题系列第2篇。常见面试问 ... [详细]
  • 1.脚本功能1)自动替换jar包中的配置文件。2)自动备份老版本的Jar包3)自动判断是初次启动还是更新服务2.脚本准备进入ho ... [详细]
  • 开发笔记:Python之路第一篇:初识Python
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Python之路第一篇:初识Python相关的知识,希望对你有一定的参考价值。Python简介& ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
author-avatar
大道废_796
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有