当前位置: 首页 > news >正文

cvc-complex-type.2.4.a: 发现了以元素 ‘base-extension‘ 开头的无效内容。应以 ‘{layoutlib}‘ 之一开头

不能飞的猪只是没用的猪。

—— 宫崎骏 《红猪》

 

 常见的1种case

记录一下,新电脑安装android studio导入公司那些gradle还是5.5左右的工程以后,各种不适应。编译问题出现了。老电脑都是好好的。

cvc-complex-type.2.4.a: 发现了以元素 ‘base-extension‘ 开头的无效内容。应以 ‘{layoutlib}‘ 之一开头这样的错误。

解决方案:
小齿轮->project structure->SDK Location-> (JDK location was moved to Gradle Settings)点击Gradle Settings。

或者
Android Studio -> Preferences -> 搜索Gradle-> Gradle JDK 改成1.8。

官方其他信息补充:

跟随 Arctic Fox 更新的其中一个重点就是 AGP 7.0 的调整 … 使用 Android Gradle plugin
7.0 构建时需要 JDK 11 才能运行 Gradle … 并且只要你更新到 Android Studio Arctic Fox ,它是直接捆绑了 JDK 11 并将 Gradle 配置为默认使用它,所以大多数情况下,如果你本地配置正常,是可以直接使用 AGP 7.0
的升级。 … 在 Project Structure 的 SDK Location 栏目,可以看到 JDK 的配置位置已经被移动到
Gradle Settings …

 所以有的博客说,工程切换到gradle7.0就好了。但是我们不希望改变代码,毕竟公司那么多人,还有内网平台的编译工具,肯定是不能改变源码的gradle版本的。

结合上面的引用重点信息,“Android Gradle plugin 7.0 构建时需要 JDK 11 ”,
“它是直接捆绑了 JDK 11 并将 Gradle 配置为默认使用它”

懂了吧?反过来思考,老工程,使用的AGP(android gradle plugin)也是老的,那么他依赖的JDK也需要是老的1.8。

修改jdk的版本为1.8就可以解决啦!
所以新电脑或者新android studio不能用的原因,那是因为新版的android studio默认使用了jdk11,导致你的老工程在新电脑就不能用啦。

0328补充第二种:

上述操作为第一步。最近又还经常遇到提示:
那么,

project structure->Project页,发现android gradle plugin version是空的。
从 https://developer.android.google.cn/studio/releases/gradle-plugin.html
找到对应的,比如我这里是5.5.1的gradle版本,那么选择一个最高一点的3.5.4能支持的AGP version。
正确填写。
但是可能你会遇到一些墙的问题。只能整理下网络再行配置了。

请添加图片描述

 

一般这个都是在gradle编译通过后启动时候,jdk更换后 ,clean project 一定要保证网络通畅。

http://www.lryc.cn/news/138146.html

相关文章:

  • cortex-A7核IIC实验
  • task.run()和 await task.run() 区别 await 运行机制
  • LeetCode面试经典150题(day 2)
  • 阿里云机器学习PAI全新推出特征平台 (Feature Store),助力AI建模场景特征数据高效利用
  • 网络安全工具和资源推荐: 介绍网络安全领域中常用的工具、框架、资源和学习资料
  • 『C语言入门』探索C语言函数
  • Django基础3——视图函数
  • python 基础篇 day 4 选择结构—— if 结构
  • 科技赋能,教育革新——大步迈向体育强国梦
  • 【秋招基础】后端开发——笔面试常见题目
  • 自定义loadbalance实现feignclient的自定义路由
  • 论文笔记:从不平衡数据流中学习的综述: 分类、挑战、实证研究和可重复的实验框架
  • C#设计模式六大原则之--迪米特法则
  • 一次js请求一般情况下有哪些地方会有缓存处理?
  • CSDN编程题-每日一练(2023-08-24)
  • 怎么把PDF转成Word?需要注意什么事项?
  • USACO22OPEN Pair Programming G
  • 实战分享之springboot+easypoi快速业务集成
  • 金字塔原理(思考的逻辑)
  • 机器学习之前向传播(Forward Propagation)和反向传播(Back propagation)
  • Matlab高光谱遥感数据处理与混合像元分解实践技术
  • Docker consul的容器服务注册与发现
  • Spring注入外部 工厂类Bean
  • WPF网格拖动自动布局效果
  • 肯德尔秩相关系数(Kendall‘s Tau)排名
  • 电脑怎么把视频转换gif动图?视频生成gif的操作步骤
  • 使用 docker 搭建 granfana+prometheus 监控平台监控测试服务器资源
  • 一、MQ的基本概念
  • Android面试题:MVC、MVP、MVVM
  • vue js 回调函数 异步处理 为什么要 let that = this