代码之家  ›  专栏  ›  技术社区  ›  Ghasem

无法解析com。安卓支持:Android Studio新项目中的appcompat-v7:26.1.0

  •  29
  • Ghasem  · 技术社区  · 7 年前

    我知道这个问题:

    Failed to resolve: com.android.support:cardview-v7:26.0.0 android

    Could not resolve com.android.support:appcompat-v7:26.1.0 [duplicate]

    我读过这些文件:

    Migrate to Android Plugin for Gradle 3.0.0

    Migrating to Android 8.0

    所以我发布这个问题,相信它不是重复的。

    我已经安装了Android Studio 3.0.1。我之前没有任何以前的版本,我开始了一个新的项目。

    Gradle文件中的每个设置都是由Android Studio自己设置的,我已经全部检查过了。

    以下是文件内容:

    建筑gradle(模块:应用程序)

        apply plugin: 'com.android.application'
    
        android {
            compileSdkVersion 26
            defaultConfig {
                applicationId "com.example.administrator.as301test"
                minSdkVersion 16
                targetSdkVersion 26
                versionCode 1
                versionName "1.0"
                testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
            }
            buildTypes {
                release {
                    minifyEnabled false
                    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
                }
            }
        }
    
        dependencies {
            implementation fileTree(dir: 'libs', include: ['*.jar'])
            implementation 'com.android.support:appcompat-v7:26.1.0'
            implementation 'com.android.support.constraint:constraint-layout:1.0.2'
            implementation 'com.android.support:design:26.1.0'
            testImplementation 'junit:junit:4.12'
            androidTestImplementation 'com.android.support.test:runner:1.0.1'
            androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
        }
    

    顶级构建。格拉德尔

    buildscript {
    
        repositories {
            google()
            jcenter()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:3.0.1'
    
    
            // NOTE: Do not place your application dependencies here; they belong
            // in the individual module build.gradle files
        }
    }
    
    allprojects {
        repositories {
            google()
            jcenter()
        }
    }
    
    task clean(type: Delete) {
        delete rootProject.buildDir
    }
    

    gradle包装。属性

    distributionBase=GRADLE_USER_HOME
    distributionPath=wrapper/dists
    zipStoreBase=GRADLE_USER_HOME
    zipStorePath=wrapper/dists
    distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
    

    我使用 google() 在存储库中作为 here 明确表示:

      // If you're using a version of Gradle lower than 4.1, you must instead use:
         // maven {
         //     url 'https://maven.google.com'
         // }
    

    我的gradle版本是4.1,所以我不需要上面的代码。

    错误:无法解析“”的依存关系:app@debug/compileClasspath': 无法解析com。安卓支持:appcompat-v7:26.1.0。

    在中创建新项目时,为什么会出现此错误 AS 3.0.1 它已经设置了所有必要的设置?

    使现代化

    @Rohit的答案以某种方式解决了这个问题,但对于其他一些依赖项,我仍然会遇到相同的错误。

    无法解析com。安卓支持测试:转轮:1.0.1

    无法解析 通用域名格式。安卓支持测验浓缩咖啡:浓缩咖啡核心:3.0.1

    无法解析junit:junit:4.12

    14 回复  |  直到 7 年前
        1
  •  26
  •   Ghasem    7 年前

    最后,我通过修改 build.gradle 这样地:

    android {
        compileSdkVersion 26
        buildToolsVersion "26.0.2"
    
        defaultConfig {
            minSdkVersion 16
            targetSdkVersion 26
        }
    }
    
    dependencies {
        implementation fileTree(dir: 'libs', include: ['*.jar'])
        implementation 'com.android.support:appcompat-v7:26.1.0'
        implementation 'com.android.support.constraint:constraint-layout:1.0.2'
        implementation 'com.android.support:design:26.1.0'
    }
    

    我删除了这些行,因为它们会产生更多错误:

    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.1'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
    

    此外,我在将现有项目从2.3迁移到3.0.1时也遇到了同样的问题,在修改项目渐变文件时,我提出了一个可行的解决方案:

    建筑格拉德尔 (模块应用程序)

    android {
        compileSdkVersion 27
        buildToolsVersion "27.0.1"
    
        defaultConfig {
            applicationId "com.mobaleghan.tablighcalendar"
            minSdkVersion 16
            targetSdkVersion 27
        }
    
    dependencies {
        implementation 'com.android.support:appcompat-v7:25.1.0'
        implementation 'com.android.support:design:25.1.0'
        implementation 'com.android.support:preference-v7:25.1.0'
        implementation 'com.android.support:recyclerview-v7:25.1.0'
        implementation 'com.android.support:support-annotations:25.1.0'
        implementation 'com.android.support:support-v4:25.1.0'
        implementation 'com.android.support:cardview-v7:25.1.0'
        implementation 'com.google.android.apps.dashclock:dashclock-api:2.0.0'
    }
    

    顶级构建。格拉德尔

    buildscript {
        repositories {
            google()
            jcenter()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:3.0.1'
        }
    }
    
    allprojects {
        repositories {
            google()
            jcenter()
        }
    }
    
        2
  •  10
  •   Harsh    7 年前

    enter image description here 转到Android->sdk->生成工具目录确保您拥有所需的所有版本。如果没有,请下载。之后 转到文件-->设置-->建造、执行、付款-->格拉德尔

    使用默认gradle wapper(推荐)

    和untick 离线工作

    gradle build成功完成一次您可以更改设置

    如果它不能简单地解决问题

    检查此链接以查找适当的支持库版本

    https://developer.android.com/topic/libraries/support-library/revisions

    确保编译sdk和目标版本与支持库版本相同。 建议至少在第一次构建时维护网络连接(记住在完成此操作后重建项目)

        3
  •  8
  •   Ghasem    7 年前

    试试这个:

    android {
        compileSdkVersion 26
        buildToolsVersion "26.0.1"
    defaultConfig {
    
            targetSdkVersion 26
        }
    
    }
    
    
    compile 'com.android.support:appcompat-v7:25.1.0'
    

    这对我很有效

        4
  •  5
  •   Fyko    7 年前

    我尝试了以上所有的方法,但没有任何效果。

    然后我遵循Gradle设置>构建执行、部署>Gradle>Android Studio并选中“禁用嵌入式Maven存储库”。

    用这个做了一个构建检查,问题就解决了。

        5
  •  3
  •   Clement Olaniyan    7 年前

    只需转到 文件\设置\渐变。取消选择“脱机工作”框。现在您可以连接并

        6
  •  2
  •   Jayesh Rathod    7 年前

    您的android studio可能忘记放置: 您需要“buildTools”来开发相关的设计和java文件。如果Android中没有安装任何构建工具->sdk->构建工具目录,然后首先下载。

        7
  •  2
  •   Aditya Tandon    7 年前

    我们从另一个网站上得到了这个答案,我不想为此承担任何责任,但这个解决方案就像黄油一样有效。

    转到文件\设置\渐变。取消选择“脱机工作”框。现在,您可以连接并下载任何必要的或缺失的依赖项。

        8
  •  2
  •   Janaka Pushpakumara    7 年前

    android\app\build。格拉德尔 文件,您需要指定以下内容

    compileSdkVersion 26
    buildToolsVersion "26.0.1"
    

    然后找到这个

    compile "com.android.support:appcompat-v7"
    

    确保上面写着

    compile "com.android.support:appcompat-v7:26.0.1"
    
        9
  •  2
  •   Meisam    7 年前

    好吧,这是一种错误的方法,但如果你这样使用它:

    compile "com.android.support:appcompat-v7:+"
    

    Android Studio将使用其最新版本。

    在我的例子中是26.0.0alpha-1。

    您可以在外部库(在项目视图中)中看到使用的版本。

    我什么都试过了,但都用不到26.0.0alpha-1以上的版本,我的IP好像被谷歌屏蔽了。知道吗?议论

        10
  •  1
  •   Asim    7 年前

    在我的例子中,当我尝试使用gridView时会发生此错误

    我通过从构建中删除这一行解决了这个问题。等级(模块)文件

    implementation 'com.android.support:gridlayout-v7:28.0.0-alpha3'
    
        11
  •  0
  •   towa    7 年前

    这个问题似乎是这样的。

    How to resolve repository certificate error in Gradle build

    以下步骤可能会有所帮助:

    1、将证书添加到密钥库-

    从Android Studio cacerts将一些证书导入Android Studio JDK cacerts。

    Android Studio的cacerts可能位于

    {your-home-directory}/.AndroidStudio3.0/system/tasks/cacerts
    

    我使用了以下导入命令。

    $ keytool -importkeystore -v -srckeystore {src cacerts} -destkeystore {dest cacerts}
    

    2.将修改后的cacert路径添加到gradle。属性-

    systemProp.javax.net.ssl.trustStore={your-android-studio-directory}\\jre\\jre\\lib\\security\\cacerts
    systemProp.javax.net.ssl.trustStorePassword=changeit
    

    裁判: https://www.cresco.co.jp/blog/entry/2014/ /

        12
  •  0
  •   Aravindrajan Sampathkumar    7 年前

    尝试通过以下方式清除android studio中的缓存: 文件->使缓存无效->使无效 失效后 构建->清洁项目 然后你就可以建立这个项目了

        13
  •  0
  •   Ghasem    6 年前

    这是我的工作

    compile 'com.android.support:appcompat-v7:26.0.0'
    

    将26.0.0更改为26.0.1

    compile 'com.android.support:appcompat-v7:26.0.1'
    
        14
  •  0
  •   Zhentao    5 年前

    这是我的工作。添加配置。所有应用程序/内部版本。格拉德尔

    android {
        configurations.all {
            resolutionStrategy.force 'com.android.support:support-annotations:27.1.1'
        }
    }