Android Studio 3.0.1中appcompat依赖解析失败问题求助
解决Android Studio 3.0.1中无法解析com.android.support:appcompat-v7:26.1.0的问题
咱们一步一步来搞定这个依赖解析问题,顺便排查其他可能的appcompat相关错误:
1. 先关掉离线模式,让Gradle下载缺失的依赖
你现在处于离线模式,本地根本没有com.android.support:appcompat-v7:26.1.0的缓存包,这是最直接的原因:
- 打开Android Studio,顶部菜单栏点
File→Settings(Windows/Linux)或者Android Studio→Preferences(Mac) - 在设置窗口里找到
Build, Execution, Deployment→Build Tools→Gradle - 取消勾选「Offline work」选项,点
Apply再OK - 回到项目,点右上角的「Sync Project with Gradle Files」按钮,等Gradle把缺失的依赖下载下来
2. 检查项目仓库配置是否正确
Android Support库(包括appcompat-v7)得从Google的Maven仓库拉取,所以要确保项目根目录的build.gradle配置对了:
打开根目录的build.gradle,确认allprojects块里包含Google仓库:
allprojects { repositories { google() // AS 3.0+推荐用这个,旧版本可以写成 maven { url 'https://maven.google.com' } jcenter() } }
改完之后记得同步Gradle项目。
3. 保证compileSdkVersion和support库版本匹配
Support库的主版本号必须和你的compileSdkVersion一致,appcompat-v7:26.1.0对应的compileSdkVersion得是26:
打开app模块下的build.gradle,检查这两处:
android { compileSdkVersion 26 // 这里必须是26,和support库的主版本号对应 // ...其他配置 } dependencies { implementation 'com.android.support:appcompat-v7:26.1.0' // ...其他依赖 }
如果你的compileSdkVersion不是26,要么改成26,要么把support库版本换成和compileSdkVersion匹配的(比如compileSdkVersion是27就用appcompat-v7:27.x.x)。
4. 清理缓存并重建项目
有时候旧缓存会搞出奇怪的问题,试试这两步:
- 顶部菜单栏点
Build→Clean Project - 清理完之后点
Build→Rebuild Project - 再同步一次Gradle文件
5. 检查Gradle插件版本是否兼容
AS 3.0.1对应的Gradle插件版本应该是3.0.1,确认项目根目录的build.gradle里的插件版本正确:
buildscript { repositories { google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.0.1' // ...其他插件 } }
如果插件版本不对,也会导致依赖解析异常,改完同步项目就行。
要是上面的步骤都试过还不行,那就删掉本地的Gradle缓存:
- 缓存目录一般在
~/.gradle/caches(Mac/Linux)或者C:\Users\<你的用户名>\.gradle\caches(Windows) - 删掉这个目录里的所有内容,重新打开Android Studio同步项目,让Gradle重新下载所有依赖。
内容的提问来源于stack exchange,提问作者Pss
相关产品推荐
相关产品推荐

