Android Studio Arctic Fox | 2020.3.1、Gradle 7.0升级记录

简介: Android Studio Arctic Fox | 2020.3.1、Gradle 7.0升级记录

环境

Android Studio Arctic Fox | 2020.3.1

Gradle、AGP 7.0

Kotlin 1.5.31

问题1

Value '/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home' given for org.gradle.java.home Gradle property is invalid (Java home supplied is invalid)

解决

Gradle的java环境变量与系统JAVA_HOME不一致。


终端输入:/usr/libexec/java_home -V,查看java路径。


yechao@yechaoa ~ % /usr/libexec/java_home -V
Matching Java Virtual Machines (2):
    1.8.131.11 (x86_64) "Oracle Corporation" - "Java" /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
    1.8.0_131 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home

或是mac下,打开访达,然后打开user目录,command+shift+.显示隐藏文件夹,找到.bash_profile文件,查看或配置java环境


# java home
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home
export PATH=${PATH}:${JAVA_HOME}/bin
export PATH=${PATH}:${JAVA_HOME}/jre/bin

然后打开项目中的gradle.properties文件,查看org.gradle.java.home参数是否一致,改为一致即可。


#org.gradle.java.home=/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home
org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home

注意:以上路径改为自己的java路径。


问题2

Method 'buildStarted' from class 'BuildTraceListener' does not override method from its superclass or interfaces but is annotated with @Override.

解决

Gradle 7.0移除了BuildListener.buildStarted(Gradle),直接删除buildStarted方法即可。


改用BuildListener.beforeSettings(Settings)代替。


问题3

Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8.


AGP 7.0必须使用Java 11.


Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8.
You can try some of the following options:
  - changing the IDE settings.
  - changing the JAVA_HOME environment variable.
  - changing `org.gradle.java.home` in `gradle.properties`.
Gradle settings

解决

直接点击Gradle settings


选择android studio 11的版本,重新编译即可。


注意: AGP的java版本跟项目的版本可以不一致。


也可以修改build.gradle中的配置为以下:


 

compileOptions {
        sourceCompatibility JavaVersion.VERSION_11
        targetCompatibility JavaVersion.VERSION_11
    }
    kotlinOptions {
        jvmTarget = '11'
    }

只要你的项目支持即可。


问题4

DSL element 'dexOptions' is obsolete and should be removed.
It will be removed in version 8.0 of the Android Gradle plugin.
Using it has no effect, and the AndroidGradle plugin optimizes dexing automatically.

解决

dexOptions已经过时,会在AGP8.0移除,并且AGP会自动帮我们优化,所以,直接在build.gradle中移除dexOptions即可。


问题5

The specified Android SDK Build Tools version (30.0.1) is ignored, as it is below the minimum supported version (30.0.2) for Android Gradle Plugin 7.0.2.
Android SDK Build Tools 30.0.2 will be used.
To suppress this warning, remove "buildToolsVersion '30.0.1'" from your build.gradle file, as each version of the Android Gradle Plugin now has a default version of the build tools.
Remove Build Tools version and sync project
Affected Modules: app

解决

buildToolsVersion 30.0.1 被忽略了,主要是因为低于AGP7.0.2所要求的的最低版本30.0.2,所以会使用30.0.2的版本,

而且后续AGP也会应用一个对应的默认的版本,直接移除buildToolsVersion即可。


问题6

Project property 'kotlin.parallel.tasks.in.project' is deprecated.
By default it depends on Gradle parallel project execution option value.

解决

kotlin.parallel.tasks.in.project弃用了,是kotlin 1.5.20版本中的变更,使用org.gradle.parallel就够了,所以直接删除kotlin.parallel.tasks.in.project即可。


其他

还有一些代码上的警告,按照提示解决即可。


Github

https://github.com/yechaoa/wanandroid_jetpack

参考

Android Studio release notes

Upgrading your build from Gradle 6.x to the latest

What’s new in Kotlin 1.5.20

目录
相关文章
|
3月前
|
Android开发
复杂项目即时通讯从android 5升级android x后遗症之解决报错#79 java.io.EOFException Unexpected end of ZLIB input stream-优雅草卓伊凡|bigniu
复杂项目即时通讯从android 5升级android x后遗症之解决报错#79 java.io.EOFException Unexpected end of ZLIB input stream-优雅草卓伊凡|bigniu
197 4
复杂项目即时通讯从android 5升级android x后遗症之解决报错#79 java.io.EOFException Unexpected end of ZLIB input stream-优雅草卓伊凡|bigniu
|
7月前
|
开发工具 Android开发 iOS开发
如何在Android Studio中配置Flutter环境?
如何在Android Studio中配置Flutter环境?
1652 61
|
2月前
|
缓存 Unix Android开发
Android安卓项目调试之Gradle 与 Gradle Wrapper的概念以及常用gradle命令深度详解-优雅草卓伊凡
Android安卓项目调试之Gradle 与 Gradle Wrapper的概念以及常用gradle命令深度详解-优雅草卓伊凡
242 8
|
2月前
|
存储 API Android开发
【02】完整的安卓二次商业实战-配置gradle-构建打包原生安卓项目-调试本地运行模拟器-优雅草伊凡
【02】完整的安卓二次商业实战-配置gradle-构建打包原生安卓项目-调试本地运行模拟器-优雅草伊凡
140 4
【02】完整的安卓二次商业实战-配置gradle-构建打包原生安卓项目-调试本地运行模拟器-优雅草伊凡
|
3月前
|
Java Android开发 C++
复杂项目即时通讯从android 5升级android x后遗症之解决报错#1057 SIGABRT #00 pc 0000000000073898-优雅草卓伊凡|bigniu
复杂项目即时通讯从android 5升级android x后遗症之解决报错#1057 SIGABRT #00 pc 0000000000073898-优雅草卓伊凡|bigniu
176 2
 复杂项目即时通讯从android 5升级android x后遗症之解决报错#1057 SIGABRT #00 pc 0000000000073898-优雅草卓伊凡|bigniu
|
2月前
|
Java 开发工具 Maven
【01】完整的安卓二次商业实战-详细的初级步骤同步项目和gradle配置以及开发思路-优雅草伊凡
【01】完整的安卓二次商业实战-详细的初级步骤同步项目和gradle配置以及开发思路-优雅草伊凡
154 6
|
3月前
|
Java 开发工具 Android开发
复杂项目即时通讯从android 5升级android x后遗症之解决#209 java.lang.IndexOutOfBoundsException.解决-优雅草卓伊凡
复杂项目即时通讯从android 5升级android x后遗症之解决#209 java.lang.IndexOutOfBoundsException.解决-优雅草卓伊凡
87 0
|
6月前
|
Android开发 Windows
Android studio 报错Connect to 127.0.0.1:8888 [/127.0.0.1] failed: Connection refused: connect(已解决)
这是一篇关于解决Android Studio报错“Connect to 127.0.0.1:8888 failed: Connection refused”的文章。问题通常因系统代理设置被Android Studio自动保存导致。解决方法是找到系统中Android Studio使用的gradle.properties文件(位于Windows的C:\Users\你的电脑用户名\.gradle或Mac的/Users/.{你的用户目录}/.gradle),删除或注释掉多余的代理配置后保存并重新Sync项目。希望此经验能帮助快速解决同类问题!
852 36
|
6月前
|
Java Android开发
Android studio中build.gradle文件简单介绍
本文解析了Android项目中build.gradle文件的作用,包括jcenter仓库配置、模块类型定义、包名设置及依赖管理,涵盖本地、库和远程依赖的区别。
549 19
|
Android开发
【错误记录】Android Studio 编译报错 ( Installed Build Tools revision 31.0.0 is corrupted )
【错误记录】Android Studio 编译报错 ( Installed Build Tools revision 31.0.0 is corrupted )
1284 0
【错误记录】Android Studio 编译报错 ( Installed Build Tools revision 31.0.0 is corrupted )

热门文章

最新文章

推荐镜像

更多