日常项目构建错误(Android)

1. gradle 进程占用

  • 使用 visualvm 工具查看 gradle 进程
  • 打开任务管理器杀死进程

2. Duplicate class 类重复

  • 排除重复模块
  • 或删除重复代码

3. as 控制台输出日志覆盖

  • as setting 修改日志缓存大小
  • 或修改配置文件bin\idea.properties 配置项idea.cycle.buffer.size
  • 重启 as

4. utf-8 序列的字节无效

  • gradle.properties 配置项 org.gradle.jvmargs 指定 UTF-8 编码

org.gradle.jvmargs=-Dfile.encoding=UTF-8

5. jvm 创建失败,内存不足

  • gradle.properties 配置项 -Xmx 调整大小

org.gradle.jvmargs=-Xmx2048m

6. as 打包控制台输出乱码

  • setting 设置编码为 utf-8

7. as gradle Task 列表为空或不完整

  • 低版本:setting 取消勾选 Do not build gradle task list during gradle syne
  • 高版本:setting 勾选 configure all gradle tasks during gradle sync
  • 重新同步一次

8. as gradle.properties 指定 jdk

org.gradle.java.home=C:\Program Files\Java\jdk-11.0.16

9. gradle 镜像地址

distributionUrl=https://mirrors.cloud.tencent.com/gradle/gradle-7.6.4-bin.zip

10. manifest 位置元素 provider

  • 升级 gradle 到 6+ 版本
  • 升级 AGP 到 4+ 版本

11. androidx-work-runtime 版本较低闪退

  • 升级版本到 2.7.0 及以上
  • 或强制指定版本 2.7.0

12. more than one file 重复的文件

  • build.gradle 配置 packingOptions exclude 排除文件

13. 编译器 (1.8.0_40) 中出现异常错误

  • 升级 jdk 版本(如升级到 jdk11)

14. as 打包输出大量系统日志

  • 新增打包参数 --quiet

15. MergeJavaResWorkAction invalid block type

  • 关闭 databinding

16. You need to use a Theme.AppCompat theme (or descendant) with this activity

  • 为 Activity 设置合适的主题 android:theme="@style/Theme.AppCompat.NoActionBar"

17. namespace not specified

  • build.gradle 设置 namespace
  • 或 manifest 标签设置 package 属性

18. Unsupported version number [55.0] (maximum 54.0, Java 10)

  • 工程不要禁用 R8,gradle.properties 删除 android.enableR8=false(如有)

Caused by: java.lang.UnsupportedOperationException: Unsupported version number [55.0] (maximum 54.0, Java 10)

at proguard.classfile.util.ClassUtil.checkVersionNumbers(ClassUtil.java:150)

at proguard.classfile.io.ProgramClassReader.visitProgramClass(ProgramClassReader.java:101)

at proguard.classfile.ProgramClass.accept(ProgramClass.java:430)

at proguard.io.ClassReader.read(ClassReader.java:91)

19. javax.annotation.Nullable 找不到

  • 添加依赖 com.google.code.findbugs:jsr305:3.0.2

编译器 (17.0.12) 中出现异常错误。如果在 Bug Database (https://bugs.java.com) 中没有找到该错误,请通过 Java Bug 报告页 (https://bugreport.java.com) 建立该 Java 编译器 Bug。请在报告中附上您的程序、以下诊断信息以及传递到 Java 编译器的参数。谢谢。

com.sun.tools.javac.code.Symbol$CompletionFailure: 找不到javax.annotation.Nullable的类文件

相关推荐
Lei活在当下4 小时前
【Perfetto从入门到精通】2. 使用 Perfetto 追踪/分析 APP 的 Native/Java 内存
android·性能优化·架构
愤怒的代码5 小时前
🔗 深度解析 SystemUI 进程间通信机制(一)
android·操作系统·app
RainyJiang6 小时前
聊聊协程里的 Semaphore:别让协程挤爆门口
android·kotlin
Dev7z7 小时前
在MySQL里创建数据库
android·数据库·mysql
invicinble8 小时前
mysql建立存数据的表(一)
android·数据库·mysql
似霰9 小时前
传统 Hal 开发笔记1----传统 HAL简介
android·hal
Zender Han9 小时前
Flutter Gradients 全面指南:原理、类型与实战使用
android·flutter·ios
火柴就是我10 小时前
Flutter Path.computeMetrics() 的使用注意点
android·flutter
モンキー・D・小菜鸡儿11 小时前
Android 系统TTS(文字转语音)解析
android·tts
2501_9159090611 小时前
iOS 反编译防护工具全景解析 从底层符号到资源层的多维安全体系
android·安全·ios·小程序·uni-app·iphone·webview