如何在你的Android工程中启用K2编译器?

news2024/11/17 16:42:46

如何在你的Android工程中启用K2编译器?

K2编译器是用于Kotlin代码编译的最新、高效编译器,你现在可以尝试使用了。

Kotlin编译器正在为Kotlin 2.0进行重写,新的编译器实现(代号K2)带来了显著的构建速度改进,编译Kotlin代码的速度比原始编译器快了两倍。它还具有更灵活的架构,允许在2.0之后引入新的语言功能。

尝试新的编译器

Kotlin 1.9引入了K2新编译器的Beta版本,适用于JVM目标,包括Android项目。为了帮助稳定新编译器并确保准备好迎接Kotlin 2.0,我们鼓励您尝试使用新编译器编译您的项目。如果遇到任何问题,可以在Kotlin问题跟踪器上报告它们。

要尝试新编译器,请更新到Kotlin 1.9,并将以下内容添加到项目的gradle.properties文件中:

kotlin.experimental.tryK2=true

请注意,新编译器目前不应用于生产构建。早期尝试的一个好方法是在项目中创建一个单独的分支以使用K2进行编译。您可以在Now in Android存储库中找到一个示例。

支持K2的工具

依赖Kotlin编译器前端的插件和工具也必须更新以支持K2。一些工具已经具有用于使用K2构建的实验性支持:Jetpack Compose编译器插件从1.5.0开始支持K2,与Kotlin 1.9兼容。

Android Lint从8.2.0-alpha12版本开始支持K2。要在K2上运行Lint,请升级到此版本并将android.lint.useK2Uast=true添加到您的gradle.properties文件中。请注意,任何依赖于旧前端API的自定义Lint规则都必须更新以使用分析API。

在其他工具中添加对K2的支持仍在进行中:KSP和KAPT任务在使用K2构建项目时目前仍会回退到使用旧编译器。但是,当使用这些工具时,编译任务仍可以使用K2运行。

Android Studio还依赖于Kotlin编译器进行代码分析。在Android Studio支持K2之前,使用K2进行构建可能会导致在某些边缘情况下IDE的代码分析与命令行构建之间存在一些差异。

如果您使用任何额外的编译器插件,请检查它们的文档,以查看它们是否已与K2兼容。

立即开始使用K2编译器

立即尝试K2编译器
Kotlin 2.0编译器带来了显著的改进,有助于更快地发布更新、提高生产力,并将更多精力投入到使您的应用独特的方面。它已经与Jetpack Compose兼容,我们还计划在其他工具(包括Android Studio、KSP和编译器插件)中提供更好的支持。现在是时候在您的应用代码中尝试它,并提供与Kotlin、Compose或Lint相关的反馈意见。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/972458.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

K210-调用自定义py库

调用自定义py库 导入py库文件调用py库 用过Python的朋友应该知道,Python是支持将自定义py库(或者第三方py库)放到同一个目录下调用的,MicroPython也是支持调用自定义py库的。在调用自定义py库之前,需要提前将py库文件导…

期货基础知识

一、期货是什么?  期货是与现货相对应,并由现货衍生而来。期货通常指期货合约,期货与现货完全不同,现货是实实在在可以交易的货(商品),期货主要不是货,而是以某种大众产品如棉花、大…

影响Windows 和 macOS平台,黑客利用 Adobe CF 漏洞部署恶意软件

FortiGuard 实验室的网络安全研究人员发现了几个影响 Windows 和 Mac 设备的 Adobe ColdFusion 漏洞。 远程攻击者可利用Adobe ColdFusion 2021中的验证前RCE漏洞,获取受影响系統的控制权力。Adobe 已发布安全补丁来解决这些漏洞,但攻击者仍在利用这些漏…

leetcode:1941. 检查是否所有字符出现次数相同(python3解法)

难度:简单 给你一个字符串 s ,如果 s 是一个 好 字符串,请你返回 true ,否则请返回 false 。 如果 s 中出现过的 所有 字符的出现次数 相同 ,那么我们称字符串 s 是 好 字符串。 示例 1: 输入:s…

鼠标悬停阴影的效果被旁边div挡住的解决办法

出现的问题 需求要求鼠标悬停某个图片上有阴影效果,但阴影被旁边相邻的div挡住了,如图所示 解决方案 给悬停的这块div增加2个css属性 $(this).css(position, relative); $(this).css(z-index, 200);新的效果如图所示 一直写后端,前端的…

国际网页短信软件平台搭建定制接口说明|移讯云短信系统

国际网页短信软件平台搭建定制接口说明|移讯云短信系统 通道路由功能介绍 支持地区通道分流,支持关键字,关键词通道分流,支持白名单独立通道,支持全网通道分流,支持通道可发地区设置,通道路由分组&#x…

redis 数据结构(二)

整数集合 整数集合是 Set 对象的底层实现之一。当一个 Set 对象只包含整数值元素,并且元素数量不时,就会使用整数集这个数据结构作为底层实现。 整数集合结构设计 整数集合本质上是一块连续内存空间,它的结构定义如下: typed…

QT C++ 实现网络聊天室

一、基本原理及流程 1&#xff09;知识回顾&#xff08;C语言中的TCP流程&#xff09; 2&#xff09;QT中的服务器端/客户端的操作流程 二、代码实现 1&#xff09;服务器 .ui .pro 在pro文件中添加network库 .h #ifndef WIDGET_H #define WIDGET_H#include <QWidget>…

春秋云镜 CVE-2018-12530

春秋云镜 CVE-2018-12530 Metinfo 6.0.0任意文件删除 靶标介绍 Metinfo 6.0.0任意文件删除。后台密码&#xff1a;f2xWcke5KN6pfebu 启动场景 漏洞利用 /admin进入管理后台&#xff0c;admin/f2xWcke5KN6pfebu /admin/app/batch/csvup.php?fileFieldtest-1&fliename…

目标检测框架MMDetection训练自定义数据集实验记录

在上一篇博文中&#xff0c;博主完成了MMDetection框架的环境部署与推理过程&#xff0c;下面进行该框架的训练过程&#xff0c;训练的入口文件为tools/train.py&#xff0c;我们需要配置的内容如下&#xff1a; parser.add_argument(--config,default"/home/ubuntu/prog…

算法通关村16关 | 滑动窗口最长字串专题

1. 最长字串专题 1.1 无重复字符的最长字串 题目 LeetCode3 给定一个字符串s&#xff0c;请你找出其中不含有重复字符的最长字串的长度。 思路 找最长字串&#xff0c;需要知道所有无重复字串的首和尾&#xff0c;找出其中最长的&#xff0c;最少两个指针才可以完成&#xff…

冠达管理:创业板是二板市场吗?二板市场起什么作用?

说到股市的各买卖板块&#xff0c;适当一部分投资者简单被主板、二板、三板这些词绕晕&#xff0c;其中二板商场一词关于有些投资者来说是比较生疏的&#xff0c;但面对创业板这一个不是主板但也没有说明是哪个层级的板块却熟悉许多&#xff0c;那么&#xff0c;创业板是不是便…

MySQL忘记密码了怎么办?如何重置修改密码?(Windows图文教程)

1. 如果服务在启动中&#xff0c;先停止MySQL服务 打开cmd&#xff0c;在命令窗口中输入net stop mysql 2. 跳过密码登录MySQL服务 mysqld --console --skip-grant-tables --shared-memory 输入以上代码 再次打开一个新的cmd窗口&#xff0c;原来的窗口不能关闭 在新的cmd窗口中…

冠达管理:股票隔夜挂单是怎么回事?股票挂单规则?

股票的买卖时刻是周一至周五上午9:30-11:30&#xff0c;下午13:00-15:00&#xff0c;一般投资者都是买卖日早上挂单&#xff0c;但也有一些投资者会在晚上隔夜挂单.那么&#xff0c;股票隔夜挂单是怎么回事&#xff1f;股票挂单规矩是什么&#xff1f;冠达管理为我们准备了相关…

C语言malloc函数学习

malloc的全称是memory allocation&#xff0c;中文叫动态内存分配&#xff0c;用于申请一块连续的指定大小的内存块区域&#xff0c;以void*类型返回分配的内存区域地址&#xff1b; 函数原型为void *malloc(unsigned int size)&#xff0c;在内存的动态存储区中分配一个长度为…

Python 内置函数详解 (1) 数学运算

近期在外旅游,本篇是出发前定时发布的,不完整,旅游回来后再补充。 Python 内置函数 Python3.11共有75个内置函数,其来历和分类请参考:Python 新版本有75个内置函数,你不会不知道吧_Hann Yang的博客-CSDN博客 函数列表 abs aiter all …

ESXI安装vCenter Server(VCSA)

概念说明ESXI安装 https://blog.csdn.net/tongxin_tongmeng/article/details/129466704 注意&#xff1a;ESXI-->主机-->硬件-->DSN服务器和网关信息-->VCSA安装时需要使用 VCSA下载 https://customerconnect.vmware.com/cn/home 注意&#xff1a;VCSA版本与ESXI版…

【Redis专题】Redis核心数据结构实战与高性能原理解析

目录 前言课程内容一、redis数据类型1.1 字符串&#xff08;string&#xff09;类型&#xff1a;比较简单的一种使用存储模型常用命令&#xff1a;&#xff08;截取自【菜鸟教程】&#xff09;部分演示应用场景 1.2 哈希&#xff08;hash&#xff09;类型&#xff1a;同类数据归…

01_Flutter之下拉刷新和上拉加载

一.创建页面 由于我们需要请求网络&#xff0c;并将返回的数据渲染到页面上&#xff0c;所以需要继承StatefulWidget&#xff0c;本文涉及的接口&#xff0c;取自鸿神的玩android开放API class ProjectListPage extends StatefulWidget {overrideState<StatefulWidget>…

亲测有效:虚拟机安装gcc,报错Could not retrieve mirrorlist http://mirrorlist.centos.org

&#xff08;网卡配置资料&#xff09; 原因&#xff1a; 网络问题 报错详情&#xff1a; One of the configured repositories failed (未知),and yum doesnt have enough cached data to continue. At this point the onlysafe thing yum can do is fail. There are a few …