AndroidStudio升级到2024.2.2项目AGP升级8.8.0版本记录
背景
升级as,一般会把agp一起升级。我的原来版本是8.7.2
plugins {id 'com.android.application' version '8.7.2' apply falseid 'com.android.library' version '8.7.2' apply falseid 'org.jetbrains.kotlin.android' version '1.8.10' apply false
}
升级后版本:
plugins {id 'com.android.application' version '8.8.0' apply falseid 'com.android.library' version '8.8.0' apply falseid 'org.jetbrains.kotlin.android' version '1.9.24' apply false
}
升级完成后直接同步,发现错误。
* What went wrong:
Script compilation error:Line 215: ksp("com.github.bumptech.glide:ksp:4.14.2")^ Unresolved reference: ksp
解决方案
在同步的时候他提示我把插件也升级了。这是更新记录。
id("com.google.devtools.ksp") version "1.8.0-1.0.8"
升级到:
id("com.google.devtools.ksp") version "2.0.21-1.0.27"
就是这个版本升级出问题。
这个版本太高了于是我去找ksp的升级版本记录
https://github.com/google/ksp/releases?page=4
在这个地方找到了一个版本,和上面的id ‘org.jetbrains.kotlin.android’ version ‘1.9.24’ apply false对应
最后确定用:
id("com.google.devtools.ksp") version "1.9.24-1.0.20"
也就是这样:
plugins {id("com.android.application")id("kotlin-android")id("kotlin-kapt")id("com.google.devtools.ksp") version "1.9.24-1.0.20"
}
id ‘org.jetbrains.kotlin.android’ version ‘1.9.24’ apply false这里的更新,是as帮我升级的,为什么他不升级到2.0?可能还没适配吧。当你是ksp的版本提示,居然是要我升级到2.0?这个就被他坑了。
ksp版本应该和org.jetbrains.kotlin.android的版本对应起来。
相关文章:
AndroidStudio升级到2024.2.2项目AGP升级8.8.0版本记录
背景 升级as,一般会把agp一起升级。我的原来版本是8.7.2 plugins {id com.android.application version 8.7.2 apply falseid com.android.library version 8.7.2 apply falseid org.jetbrains.kotlin.android version 1.8.10 apply false }升级后版本:…...
Require:利用MySQL binlog实现闪回操作
1,闪回原理 【binlog】MySQL binlog以event的形式,记录了MySQL server从启用binlog以来所有的变更信息,能够帮助重现这之间的所有变化。MySQL引入binlog主要有两个目的:一是为了主从复制;二是某些备份还原操作后需要重…...
计算机网络 (40)域名系统DNS
前言 计算机网络域名系统DNS(Domain Name System)是互联网的基础技术之一,它负责将人类可读的域名转换为计算机用来通信的数字IP地址。 一、基本概念 DNS的主要目的是将域名解析或翻译为IP地址,使得用户可以通过简单易记的域名来访…...
UE5游戏性能优化指南
UE游戏性能和场景优化思路: 1. 可以把可延展性调低,帧率会大幅提高,但画质会大幅降低 2.调整固定灯光,静态光源,烘焙构建光照,灯光重叠距离,关闭阴影 3.设置模型和地形LOD 4.开启Nanite&…...
Gitlab Runner安装与配置
由于格式和图片解析问题,为了更好阅读体验可前往 阅读原文 本篇使用Docker安装Gitlab runner进行runner的安装和注册,其他方式请参考官方文档非Docker安装Gitlab runner 请确保runner版本和gitlab版本兼容以及docker相关版本兼容问题 下载镜像 docker p…...
如何有效防止和解决IP劫持问题
一、什么是IP劫持? IP劫持是一种攻击方式,攻击者通过伪装成合法的IP地址欺骗网络系统,从而非法获取数据或中断服务。这种攻击可以导致数据泄露、服务不可用等多种严重后果。 二、防范措施 启用SSL/TLS加密 SSL/TLS协议可以在客户端和服务器…...
2006-2020年各省人均水资源量数据
2006-2020年各省人均水资源量数据 1、时间:2006-2020年 2、来源:国家统计局、统计年鉴 3、指标:行政区划代码、地区名称、年份、人均水资源量 4、范围:31省 5、指标解释:人均水资源量是指一个国家或地区在一定时期…...
C++基础入门(二)
目录 前言 一、重载 1.函数重载 2.运算符重载 二、构造函数 1.什么是构造函数 2.带参数的构造函数 3.使用初始化列表 4.this关键字 5.new关键字 三、析构函数 1.什么是析构函数 四、静态成员变量 1.静态成员的定义 2.静态成员变量的作用 五、继承 1.继承基本概…...
互联网架构困境:网络与信息安全
当我们说 TCP/IP 没有内置安全属性时,这到底是什么意思?事实上仔细观察身边的世界,很少有内置安全属性的,这源自于石器时代的野人们没有粮仓需要保护。 “互联网前身 ARPAnet 最初来自于美国国防部对等通信需求”,即使…...
HIVE技术
本文章基于黑马免费资料编写。 hive介绍 简介 hive架构 hive需要启动的配置 执行元数据库初始化命令 使用hive必须启动的服务 ./schematool -initSchema -dbType mysql -verbos启动 Hive 创建一个 hive 的日志文件夹 mkdir /export/server/hive/logs启动元数据管理服务 n…...
RustDesk ID更新脚本
RustDesk ID更新脚本 此PowerShell脚本自动更新RustDesk ID和密码,并将信息安全地存储在Bitwarden中。 特点 使用以下选项更新RustDesk ID: 使用系统主机名生成一个随机的9位数输入自定义值 为RustDesk生成新的随机密码将RustDesk ID和密码安全地存储…...
卷积神经网络的底层是傅里叶变换
1 卷积神经网络与傅里叶变换、希尔伯特空间坐标变换的关系_卷积神经网络与傅里页变换之间的关系-CSDN博客 从卷积到图像卷积再到卷积神经网络,到底卷了什么? 一维信号卷积:当前时刻之前的每一个时刻是如何对当前时刻产生影响的 图像卷积&…...
Bootstrap 下拉菜单
Bootstrap 下拉菜单 Bootstrap 是一个流行的前端框架,它提供了许多预构建的组件,其中之一就是下拉菜单。下拉菜单是一个交互式元素,允许用户从一系列选项中选择一个。在本篇文章中,我们将详细介绍如何在 Bootstrap 中创建和使用下…...
计算机组成原理(计算机系统3)--实验一:WinMIPS64模拟器实验
一、实验目标: 了解WinMIPS64的基本功能和作用; 熟悉MIPS指令、初步建立指令流水执行的感性认识; 掌握该工具的基本命令和操作,为流水线实验做准备。 二、实验内容 按照下面的实验步骤及说明,完成相关操作记录实验…...
读书笔记~管理修炼-风险性决策:学会缩小风险阈值
假设你的团队为了提升业绩,提出了两个解决方案:A方案是通过营销提升老产品的利润;B方案是通过研发开拓新产品,你会怎么选? 我们先来分析下,其实无论是A方案还是B方案,都会遇到市场难题…...
VIVADO FIFO (同步和异步) IP 核详细使用配置步骤
VIVADO FIFO (同步和异步) IP 核详细使用配置步骤 目录 前言 一、同步FIFO的使用 1、配置 2、仿真 二、异步FIFO的使用 1、配置 2、仿真 前言 在系统设计中,利用FIFO(first in first out)进行数据处理是再普遍不过的应用了,…...
tcp粘包原理和解决
tcp粘包原理和解决 咱们先通过展示基于tcp 的cs端消息通信时的现象,带着问题再解释下面的tcp粘包问题。 一、原始代码 tcp 服务端代码 // socket_stick/server/main.gofunc process(conn net.Conn) {defer conn.Close()reader : bufio.NewReader(conn)var bu…...
C语言预处理艺术:编译前的魔法之旅
大家好,这里是小编的博客频道 小编的博客:就爱学编程 很高兴在CSDN这个大家庭与大家相识,希望能在这里与大家共同进步,共同收获更好的自己!!! 本文目录 引言正文一、预处理的作用与流程…...
C++算法第十六天
本篇文章我们继续学习动态规划 第一题 题目链接 978. 最长湍流子数组 - 力扣(LeetCode) 题目解析 从上图可见其实有三个状态 代码原理 注意:我们在分析题目的时候分析出来的是三个状态,分别是上升、下降、平坦,但是…...
计算机网络 (45)动态主机配置协议DHCP
前言 计算机网络中的动态主机配置协议(DHCP,Dynamic Host Configuration Protocol)是一种网络管理协议,主要用于自动分配IP地址和其他网络配置参数给连接到网络的设备。 一、基本概念 定义:DHCP是一种网络协议…...
MFC内存泄露
1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...
如何在看板中有效管理突发紧急任务
在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...
[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...
ETLCloud可能遇到的问题有哪些?常见坑位解析
数据集成平台ETLCloud,主要用于支持数据的抽取(Extract)、转换(Transform)和加载(Load)过程。提供了一个简洁直观的界面,以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...
Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...
Psychopy音频的使用
Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一)
宇树机器人多姿态起立控制强化学习框架论文解析 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(一) 论文解读:交大&港大&上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化…...
分布式增量爬虫实现方案
之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面,避免重复抓取,以节省资源和时间。 在分布式环境下,增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路:将增量判…...
C#学习第29天:表达式树(Expression Trees)
目录 什么是表达式树? 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持: 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...
Webpack性能优化:构建速度与体积优化策略
一、构建速度优化 1、升级Webpack和Node.js 优化效果:Webpack 4比Webpack 3构建时间降低60%-98%。原因: V8引擎优化(for of替代forEach、Map/Set替代Object)。默认使用更快的md4哈希算法。AST直接从Loa…...
