1、org.gradle.api.tasks.TaskExecutionException,有时候报这个错是代码中有地方写错了,但是android studio不会定位到错误代码处。
解决方法:gradlew compileDebugSource --stacktrace -info
在AndroidStudio的terminal中输入上面的命令,会在terminal中输出编译日志,以此来定位具体的问题。
2、依赖重复问题,先用gradle语句查询某一个module依赖树,检索出重复的依赖(这里以app module为例):
gradlew app:dependencies --configuration compile
随后用排除依赖的语句将重复的依赖去除:
{
exclude group:'xxx.xxx.xxx',module:'xxx'
}
3、Android studio升级3.6.x后报错 Entry name 'META-INF/MANIFEST.MF' collided
:在工程的 gradle.properties
文件中添加如下配置:
android.useNewApkCreator=false
该配置含义请查看该链接:[译]Android Studio 3.6 新特性概览
4、因网络问题依赖下载失败,可以在工程的build.gradle文件中添加阿里云镜像地址:
maven { url 'http://maven.aliyun.com/nexus/content/groups/public' }
maven { url 'https://maven.aliyun.com/repository/gradle-plugin/' }
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/jcenter' }
5、升级AS之后,run debug时出现安装失败的提示:
网上很多是说apk没有卸载干净,但是都无法解决我目前的情况,最后发现是生成debug包时apk包包含中文的原因:
修改成英文之后问题解决:
6、检查依赖库是否有更新
在项目根目录下执行:
./gradlew dependencyUpdates
会在当前目录下生成 build/dependencyUpdates/report.txt 文件,内容如下所示:
The following dependencies have later release versions:
- androidx.swiperefreshlayout:swiperefreshlayout [1.0.0 -> 1.1.0]
https://developer.android.com/jetpack/androidx
- com.squareup.okhttp3:logging-interceptor [3.9.0 -> 4.7.2]
https://square.github.io/okhttp/
- junit:junit [4.12 -> 4.13]
http://junit.org
- org.koin:koin-android [2.1.5 -> 2.1.6]
- org.koin:koin-androidx-viewmodel [2.1.5 -> 2.1.6]
- org.koin:koin-core [2.1.5 -> 2.1.6]
Gradle release-candidate updates:
- Gradle: [6.1.1 -> 6.5.1]