最近在学习Android方面的编程,这个过程中出现了许多的错误,其中最多的错误是出现在构建工具进行编译的时候。这里分析一个出现的错误,Failed to resolve: com.android.support:appcompat-v7:27.+
前几天导入了一个新的工程,工程导入后各种报错,最后发现是导入工程的SDK和tool build 的版本和本机的设置不符合,当时是各种安装SDK和build tool,如下:
个人感觉是 SDK 安装的有些高,所以兼容包不支持。
于是,便有了个人的第一种解决方法。
第一种,解决方法:
降低SDK版本,因为个人感觉使用Android Studio创建工程的时候所使用的SDK版本,所以把API Level 27及以上的 SDK版本删除掉,然后重新建立工程的时候SDK版本就会自动的使用SDK API Level 26的来构建。
这样的话,自然就不存在 com.android.support:appcompat-v7:27.+ 不存在的问题了,因为这时候使用的是com.android.support:appcompat-v7:26.+ 。
第二种,解决方法:
手动更改 应用的build文件,即 app目录下的 build.gradle 。
此时,本机的最高SDK 仍然是 API Level27, 但是我们可以在 app 的 build.gradle 中进行修改,修改如下:
compileSdkVersion 26
targetSdkVersion 26
compile 'com.android.support:appcompat-v7:26.+'
如上,该种方法是手动去修改 app的 build文件, 将SDK版本,目标执行版本,兼容的支持版本全部下调。
参考文章:
https://blog.csdn.net/mhl18820672087/article/details/78385361
第三种,解决方法:
参考原文:
https://blog.csdn.net/MoLiao2046/article/details/78580293?locationNum=6&fps=1
app module build.gradle dependencies中默认配置如下:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:27.+'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
testCompile 'junit:junit:4.12'
}
Studio 2.3版本应该在Root Project build.gradle allprojects配置如下:
allprojects {
repositories {
jcenter()
maven { url "https://maven.google.com" }
}
}
Studio 3.0版本应该在Root Project build.gradle allprojects配置如下:
allprojects {
repositories {
jcenter()
google()
}
}
因为,我的电脑上安装的是Studio2.2,于是在 根目录的build文件中进行修改,如下: