最近在學習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文件中進行修改,如下: