求助:无法找到com.android.tools.build:gradle:3.0.1该如何解决?
解决org.gradle.internal.resolve.ModuleVersionNotFoundException: 找不到com.android.tools.build:gradle:3.0.1的问题
这个错误很典型,核心原因是Android Gradle插件并不发布在Maven Central仓库,而你的项目目前只配置了去Maven Central搜索,自然找不到3.0.1版本的插件。下面是一步步的解决方法:
1. 确保项目根目录的build.gradle添加了Google Maven仓库
打开项目根目录下的build.gradle文件(注意不是app模块里的那个),检查repositories块,确保包含Google的仓库地址。你可以这样修改:
buildscript { repositories { // 保留原有的mavenCentral mavenCentral() // 添加Google仓库,两种写法都可以,老版本插件用url形式更稳妥 google() // 兼容旧环境的备选写法 // maven { url 'https://maven.google.com' } } dependencies { classpath 'com.android.tools.build:gradle:3.0.1' } } allprojects { repositories { mavenCentral() google() // maven { url 'https://maven.google.com' } } }
2. 匹配Gradle插件与Gradle Wrapper的版本
Android Gradle插件3.0.1要求Gradle Wrapper的版本至少是4.1,所以检查gradle/wrapper/gradle-wrapper.properties文件里的distributionUrl:
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
如果你的版本低于4.1,改成上面的地址,然后点击Sync按钮让Gradle自动下载对应的版本。
3. 清理并重新同步项目
执行以下命令清理项目缓存:
# Mac/Linux环境 ./gradlew clean # Windows环境 gradlew clean
然后在Android Studio中点击工具栏的「Sync Project with Gradle Files」按钮,等待同步完成。
4. 检查代理设置(受限网络环境适用)
如果你在公司或有代理的网络下,可能代理拦截了Gradle访问Google仓库的请求。可以暂时关闭代理,或者在gradle.properties里配置正确的代理信息:
systemProp.http.proxyHost=你的代理地址 systemProp.http.proxyPort=代理端口 systemProp.https.proxyHost=你的代理地址 systemProp.https.proxyPort=代理端口
5. 手动下载依赖(极端情况)
如果以上方法都不行,你可以手动下载对应的文件:
- 找到gradle-3.0.1.pom和gradle-3.0.1.jar文件
- 放到本地Maven仓库的对应路径:
~/.m2/repository/com/android/tools/build/gradle/3.0.1/(Windows是C:\Users\你的用户名\.m2\repository\com\android\tools\build\gradle\3.0.1\) - 重新同步项目即可。
内容的提问来源于stack exchange,提问作者Aakash Yadav
相关产品推荐
相关产品推荐

