赞
踩
1. 问题:
在编译一个旧项目时(该项目在其它电脑上可以正常build),又发生gradle错误提示,详细内容如下:
- A problem occurred configuring project ':app'.
- > Failed to notify project evaluation listener.
- > 'org.gradle.api.file.DirectoryProperty org.gradle.api.file.ProjectLayout.directoryProperty(org.gradle.api.provider.Provider)'
-
- * Try:
- Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
-
2. 分析:比较gradle版本的方法
根据提示,再结合“在其它旧的AndroidStudio开发环境下没有问题”,分析结果是:有可能是gradle版本不正确,在看项目的build.gradle文件,以及我的AndroidStudio的gradle版本,看看二者是不是匹配。
查看版本的两种方法:
方法1:分别查看build.gradle的配置文件和目录。
如下图:
项目的build.gradle文件:
注意是整个项目的build.gradle,而不是单个module的build.gradle。
再看 AndroidStudio的gradle版本:
方法2: 从AndroidStudio的“Project Structure”查看当前的版本,如下图:
在AndroidStudio的工具栏,有这些图标:
点击后,如下图:
可以看到,AndroidStudio的gradle版本是6.5,项目的gradle版本是3.1.0。项目的gradle版本太低了。
3. 解决方式:
修改项目的build.gradle文件,将3.1.0改为3.6.0,如下:
- dependencies {
- classpath 'com.android.tools.build:gradle:3.6.0'
- }
修改后,从AndroidStudio的“Project Structure”也能看到修改后的配置,如下图:
然后,再编译,就成功了。
4. 附:gradle版本和android plgin的对应关系:
- Plugin version Required Gradle version
- 1.0.0 - 1.1.3 2.2.1 - 2.3
- 1.2.0 - 1.3.1 2.2.1 - 2.9
- 1.5.0 2.2.1 - 2.13
- 2.0.0 - 2.1.2 2.10 - 2.13
- 2.1.3 - 2.2.3 2.14.1 - 3.5
- 2.3.0+ 3.3+
- 3.0.0+ 4.1+
- 3.1.0+ 4.4+
- 3.2.0 - 3.2.1 4.6+
- 3.3.0 - 3.3.3 4.10.1+
- 3.4.0 - 3.4.3 5.1.1+
- 3.5.0 - 3.5.4 5.4.1+
- 3.6.0 - 3.6.4 5.6.4+
- 4.0.0+ 6.1.1+
- 4.1.0+ 6.5+
- 4.2.0+ 6.7.1+
你觉得,Google的AndroidStudio的gradle版本管理方式方便么?
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。