记录 升级到Gradle 8.4.2 遇到的坑

news2024/11/29 0:49:53

序言

最近将Gradle从4.0.1 升级到 8.4.2 遇到了很多坑,记录下来帮助有缘人

在这里插入图片描述

升级gradle

修改根目录的build.gradle

   dependencies {
        classpath 'com.android.tools.build:gradle:8.4.2'
        classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0'
    }

修改gradle-wrapper.properties

#Thu Aug 13 10:10:41 CST 2020
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip

使用升级助手

使用升级助手可以节约一些时间
在这里插入图片描述
在这里插入图片描述

解决遇到的坑

1.默认不支持明文传输

需要在所有使用了http协议的仓库中配置 allowInsecureProtocol

  maven {
            url "https://mvn.mob.com/android"
            allowInsecureProtocol = true
        }

2.默认不生产BuildConfig类

需要在要使用BuildConfig的module级别的build.gradle文件中配置

android.buildFeatures.buildConfig true

在这里插入图片描述

3.配置namespace

之前配置在清单文件的package需要配置到gradle中
在这里插入图片描述
在这里插入图片描述

4.配置java版本

需要支持java 17 ,所有build.gradle文件都需要修改
在这里插入图片描述

5.缺少 ‘javax.servlet.http.HttpServlet’

升级过程中遇到这个问题,之前的低版本都可以,现在找不到类了。
在这里插入图片描述
需要手动引入

    implementation 'javax.servlet:javax.servlet-api:3.1.0'

6. 启动R文件合并

gralde 8.4.2 关闭了R文件合并功能需要开启
修改gradle.properties文件添加

android.nonTransitiveRClass=false

7.RenderScript 包名修改

需要把包名修改。

原来是

import androidx.renderscript.Allocation;
import androidx.renderscript.Element;
import androidx.renderscript.RenderScript;
import androidx.renderscript.ScriptIntrinsicBlur;

修改为

import android.renderscript.Allocation;
import android.renderscript.Element;
import android.renderscript.RenderScript;
import android.renderscript.ScriptIntrinsicBlur;

也就是把androidx 改为 android

在这里插入图片描述

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

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

相关文章

【html+css 绚丽Loading】000011 三元轮回珠

前言:哈喽,大家好,今天给大家分享htmlcss 绚丽Loading!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 &#x1f495…

【TS】函数重载的作用

前言 当调用一个函数时,通常会提示有多种调用方式,各种调用方式的参数类型、参数数量、返回值等均可能不同。本文通过自己封装的message作为案例模拟一下。 实现 自己封装的message组件,有以下7种调用方式 message({mode: "mode"…

QT-计算器

QT-计算器 一、演示效果二、关键程序三、下载链接 一、演示效果 二、关键程序 #include "mainwindow.h" #include "ui_mainwindow.h" #include <QDebug>MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow) {ui…

分布式事务:基本概念

文章目录 一、基础概念1、什么是事务2、本地事务3 、分布式事务4、分布式事务产生的场景 二、分布式事务基础理论1、CAP理论&#xff08;1&#xff09;理解CAP&#xff08;2&#xff09;CAP组合方式&#xff08;3&#xff09;总结 2、BASE理论 三、分布式事务解决方案之2PC&…

【Java日志系列】Logback日志框架

目录 前言 一、Logback简介 二、Logback组件 三、快速入门 四、配置文件的使用 1. 配置文件中的标签 1.1 logger标签 1.2 root标签 1.3 appender标签 1.4 filter标签 1.5 encoder标签 1.6 property标签 2. 常见的Appender 2.1 ConsoleAppender 2.2 FileAppender…

瓜子二手车源码开发

瓜子二手车作为国内知名的二手车交易平台&#xff0c;其开发需求与功能架构主要围绕提升用户体验、保障交易安全、优化交易流程以及提供全面服务等方面展开。以下是对瓜子二手车开发需求与功能架构的详细分析 一、开发需求 用户需求&#xff1a; 便捷性&#xff1a;用户希望能…

ReTagList标签列表(API)

组件实现基于 Vue3 + Element Plus + Typescript,同时引用 vueUse + lodash-es + tailwindCss (不影响功能,可忽略) 基于ElTag实现的Tag列表,支持Tag列表多选,动态Tag列表 ReTagList标签列表 基础 简单展示Tag列表,可通过size指定尺寸 查看 /demo/tag-list/basic.md …

叉车门口拐角盲区防撞系统,精准微波距离测距,助力企业安全生产

叉车流动性强、作业场所不固定&#xff0c;是特种设备管理的薄弱环节。如何管住叉车、管好叉车&#xff0c;保障作业人员安全一直都是重点话题&#xff0c;引入智慧叉车&#xff0c;使用智能化监管&#xff0c;很多城市相继开展智慧叉车试点工作&#xff0c;给叉车装上“智慧大…

机械学习—零基础学习日志(如何理解概率论4)

当已知一个概率&#xff0c;求解另外一个函数的概率。以下是离散型的概率计算方法。 这里是连续型的&#xff0c;已知概念密度&#xff0c;计算对应的另外一个函数的概率。 这里需要求解对应的原始函数。 这里我们做一道练习题。 《概率论与数理统计期末不挂科|考研零基础入门…

精选这五款热门好用的骨传导耳机,帮你避免踩坑的麻烦!

相信大家都已经深有体会&#xff0c;拿那种常规的入耳式无线蓝牙耳机来做运动耳机&#xff0c;很难满足运动需要。如果选择前两年流行的颈挂式无线运动蓝牙耳机&#xff0c;虽然简单轻巧&#xff0c;但也是入耳式设计&#xff0c;长时间佩戴耳朵不舒服。这样看来&#xff0c;运…

科普篇 | 如何查找参考基因组信息

前 言 很多老师会发现&#xff0c;高通量测序后需要生信分析的过程中&#xff0c;需要填写一个信息分析表。而信息分析表中有一个对生信分析很重要的信息——基因组文件及注释文件。通常这类文件我们都是需要老师提供对应的下载链接&#xff0c;以便于生信直接利用这个链接去…

Git介绍及配置

目录 Git GitHub GitLab Gitee 配置Git 安装git 初次运行 Git 前的配置 注册一个代码托管平台 用户信息 获取 Git 仓库 初始化仓库 克隆现有的仓库 https方式&#xff1a; ssh方式&#xff1a; 上传本地项目至Git仓库 https方式 ssh-key方式 添加个人公钥​ …

【python】PyQt5中的QFrame控件,控制图形的边框样式、阴影效果、形状等属性

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…

【Redis】Redis 底层的数据结构(结合源码)

众所周知&#xff0c;Redis 是一个高性能的开源内存数据库&#xff0c;支持多种数据结构&#xff08;如字符串、哈希、列表和集合&#xff09;&#xff0c;提供持久化选项以确保数据安全&#xff0c;并具备高可用性和分布式功能。 下面我们就来了解一下其底层所使用到的数据结…

包装类和简单泛型

一、包装类 在Java中&#xff0c;由于基本类型不是继承自Object&#xff0c;为了在泛型代码中可以支持基本类型&#xff0c;Java给每个基本类型都对应了一个包装类型。 1.1 基本数据类型和对应的包装类 注意&#xff1a;除了 Integer 和 Character&#xff0c; 其余基本类型的…

微信怎么恢复好友?找回失联好友,5个有效方法奉上!

微信&#xff0c;这个我们日常沟通不可或缺的工具&#xff0c;但有时会因为一些小疏忽&#xff0c;让我们不小心与好友失去了联系。可能是误删了好友&#xff0c;也可能是换了手机没来得及备份&#xff0c;导致那些熟悉的面孔从列表中消失。 那么&#xff0c;微信怎么恢复好友…

软件设计师全套备考系列文章9 -- 算法设计与分析

软考-- 软件设计师&#xff08;9&#xff09;-- 算法设计与分析 文章目录 软考-- 软件设计师&#xff08;9&#xff09;-- 算法设计与分析前言一、章节考点二、分治法三、回溯法四、贪心法五、动态规划法 前言 考试时间&#xff1a;每年5月、11月&#xff0c;软件设计师每年都…

当《黑神话:悟空》中的天命人,被AI换脸成老外…

前言 挡不住&#xff0c;根本挡不住&#xff01; 《黑神话&#xff1a;悟空》&#xff0c;这款由游戏科学公司制作的&#xff0c; 以中国神话为背景的角色扮演游戏&#xff0c;8月20日一上线&#xff0c; 就连续霸榜Steam、WeGame 等平台销量榜首&#xff0c; 肉饼的朋友圈…

软件测试学习笔记丨多表查询及子查询

本文转自测试人社区&#xff0c;原文链接&#xff1a;https://ceshiren.com/t/topic/31940 一、多表简介 定义&#xff1a;结合两个或多个表来执行SQL数据库操作&#xff0c;这通常涉及到一个或多个表的关联&#xff0c;基于某些共享的列&#xff08;通常是键&#xff09;之间…

C++面试基础系列-polymorphic多态性

系列文章目录 文章目录 系列文章目录C面试基础系列-polymorphic多态性Overview1.polymorphic多态性2.编译时多态的实现示例代码&#xff1a;函数重载示例&#xff1a;运算符重载示例&#xff1a;模板示例&#xff1a; 3.运行时多态的实现示例代码 4.编译时多态的优点关于作者 C…