无法解析“:app @ debug / compileClasspath”的依赖项:无法解析com.android.support:appcompat-v7:28.0.0-rc01

时间:2018-08-07 19:03:35

标签: android-studio

在新的Android Studio版本中,我逐渐遇到错误,基本的hello世界也未逐步发展。云,请帮忙。

这是我在新的android studio版本中遇到的错误:

This is the error I am getting in new android studio version

我的gradle文件如下

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "payments.com.java.payments"
        minSdkVersion 17
        targetSdkVersion 28
        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:28.0.0-rc01'
    implementation 'com.android.support.constraint:constraint-layout:1.1.2'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}

这是我得到的日志

  

无法解析':app @ debug / compileClasspath'的依赖项:无法解析com.android.support:appcompat-v7:28.0.0-rc01。   打开文件   显示详细信息

     

无法解决':app @ debug / compileClasspath'的依赖关系:无法解决com.android.support.constraint:constraint-layout:1.1.2。   打开文件   显示详细信息

     

无法解析':app @ debugAndroidTest / compileClasspath'的依赖关系:无法解析com.android.support.test:runner:1.0.2。   打开文件   显示详细信息

     

无法解析':app @ debugAndroidTest / compileClasspath'的依赖关系:无法解析com.android.support.test.espresso:espresso-core:3.0.2。   打开文件   显示详细信息

     

无法解决以下方面的依赖性   ':app @ debugAndroidTest / compileClasspath':无法解析com.android.support:appcompat-v7:28.0.0-rc01。   打开文件   显示详细信息

     

无法解决':app @ debugAndroidTest / compileClasspath'的依赖关系:无法解决com.android.support.constraint:constraint-layout:1.1.2。   打开文件   显示详细信息

     

无法解析':app @ debugUnitTest / compileClasspath'的依赖项:无法解析com.android.support:appcompat-v7:28.0.0-rc01。   打开文件   显示详细信息

     

无法解析':app @ debugUnitTest / compileClasspath'的依赖项:无法解析com.android.support.constraint:constraint-layout:1.1.2。   打开文件   显示详细信息

     

无法解析':app @ release / compileClasspath'的依赖关系:无法解析com.android.support:appcompat-v7:28.0.0-rc01。   打开文件   显示详细信息

     

无法解析':app @ release / compileClasspath'的依赖关系:无法解析com.android.support.constraint:constraint-layout:1.1.2。   打开文件   显示详细信息

     

无法解析':app @ releaseUnitTest / compileClasspath'的依赖项:无法解析com.android.support:appcompat-v7:28.0.0-rc01。   打开文件   显示详细信息

     

无法解决':app @ releaseUnitTest / compileClasspath'的依赖关系:无法解决com.android.support.constraint:constraint-layout:1.1.2。   打开文件   显示详细信息

15 个答案:

答案 0 :(得分:3)

检查您的互联网连接。对我来说,这只是互联网连接问题。如果您在代理服务器下。转到文件>设置>外观和行为>系统设置> HTTP代理,然后在此处输入您的代理详细信息。使用检查连接选项来验证您的连接。这是我的gradle文件的参考。

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    defaultConfig {
       applicationId "com.oops.pk.birthday_card"
       minSdkVersion 23
       targetSdkVersion 28
       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:28.0.0-rc02'
     implementation 'com.android.support:support-v4:28.0.0'
     implementation 'com.android.support:recyclerview-v7:28.0.0'
     implementation 'com.android.support:design:28.0.0'
     testImplementation 'junit:junit:4.12'
     androidTestImplementation 'com.android.support.test:runner:1.0.2'
     androidTestImplementation 'com.android.support.test.espresso:espresso- 
     core:3.0.2'
 }

答案 1 :(得分:2)

我在中国使用Shadowsocks代理,打开~/.gradle/gradle.properties并评论https主机和端口

#systemProp.https.proxyPort=1080
systemProp.http.proxyHost=127.0.0.1
#systemProp.https.proxyHost=127.0.0.1
systemProp.http.proxyPort=1080

之后,再次创建新项目或重新构建项目,完成

答案 2 :(得分:2)

这种方法对我有用。

转到-build.gradle(模块:应用)

搜索(为我搜索):

实现'com.android.support:appcompat-v7:29。+'

替换为:

实现'com.android.support:appcompat-v7:28。+'

点击“同步”或“重试”。

参考:

Before:

After

答案 3 :(得分:1)

如果您已选中脱机模式,则必须禁用它。文件>设置>构建,执行和部署> Gradle-取消选中脱机模式并应用。

另外,请检查您的互联网连接。

答案 4 :(得分:1)

尝试一下: 删除您的Gradle HTTP代理 C:\ Users ***。gradle \ gradle.properties

enter image description here

答案 5 :(得分:1)

我的同事遇到了同样的问题。我们通过删除 .android .AndroidStudiox.x .gradle 文件夹来解决此问题。这将删除所有当前android设置并重新下载当打开android studio时。确保android studio必须关闭。enter image description here

答案 6 :(得分:0)

如果您还有其他可以正常工作的Android Studio项目(没有错误),

您可以在build.gradle下检查Project - app的设置并查找以下行:

implementation 'com.android.support:appcompat-v7:***'

您的工作项目中是您的工作SDK版本,然后替换您的

implementation 'com.android.support:appcompat-v7:28.0.0-rc01'

使用有效的SDK版本(***)

如果您没有任何正在运行的项目(无错误),可以尝试我的项目:

implementation 'com.android.support:appcompat-v7:28.0.0-alpha3'

希望这可以解决您的问题,因为它刚刚解决了我的问题。

答案 7 :(得分:0)

请参阅我创建的此YouTube视频 ,以解决此问题

https://www.youtube.com/watch?v=ZAYtPzjDSQU&feature=youtu.be

这是Gradle的外观。

apply plugin: 'com.android.application'

android {
    compileSdkVersion 27
    defaultConfig {
        applicationId "payments.banamex.citi.com.banamexpayments"
        minSdkVersion 17
        targetSdkVersion 27
        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:27.1.1'
    implementation 'com.android.support.constraint:constraint-layout:1.1.2'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}

答案 8 :(得分:0)

使用:

implementation 'com.android.support:appcompat-v7:28.+'

.+将匹配任何版本的appcompat-v7:28。当前Google's Maven存储库中有28.0.0-alpha1 and 28.0.0-alpha3

答案 9 :(得分:0)

我遇到了同样的错误。我找到了解决方案。希望它对您有帮助。

转到 build.gradle(Module:app)删除

 implementation 'com.android.support:design:28.0.0-rc01'

答案 10 :(得分:0)

如果不支持28版本,则意味着将编译后的目标版本更改为27

答案 11 :(得分:0)

  1. 原因

    如果您在中国,则可能是由于您的Android Studio未正确设置代理。因此,在构建应用程序时,gradle无法访问Google's Maven Repository来下载依赖项(例如支持库)。

    并且请注意:Android Studio是允许袜子代理和http代理,但是gradle是仅允许http代理。因此,如果您在Android Studio中设置了袜子代理,您可能会发现Android Studio可以下载SDK甚至进行升级。但是在构建时,gradle无法下载支持库,因为您现在正在使用袜子代理。

  2. 如何修复

    如果您使用Shadowsocks代理。请按照以下步骤操作:

    • 对于Mac OS:

      您应该下载ShadowsocksX-NG而不是ShadowsocksX,因为ShadowsocksX可能与Android Studio不兼容。 ShadowsocksX-NG是使用socks5代理,Android Studio是access socks5代理,但请记住gradle并不是。

      您可以在Preferences Setting中看到ShadowsocksX-NG的代理信息,您会发现:

      • 本地socks5主机:127.0.0.1

      • 本地socks5端口:1086

      • 本地PAC端口:1089

      • 本地http端口:1087

      因此,您应该像这样在Android Studio中设置http代理:

      set http proxy in AS on Mac

    • 对于Windows:

      您可以下载Shadowsocks-windows并查看正确的主机和端口,然后将其设置为Android Studio代理。

      • 如果选择http代理,则可以这样设置:

        set http proxy in AS on Windows

        如果仍然无法运行,请尝试将以下代码添加到~/.gradle/gradle.properties文件中:

          

        systemProp.https.proxyHost = 127.0.0.1

             

        systemProp.https.proxyPort = 1080

             

        systemProp.http.proxyHost = 127.0.0.1

             

        systemProp.http.proxyPort = 1080

      • 如果选择袜子代理,则可以这样设置:

        set socks proxy in AS on Windows

        如果您使用的是袜子代理,可能仍无法正常工作,尝试将这些代码添加到~/.gradle/gradle.properties文件中,如下所示:

        set socks proxy for gradle

        此操作的目的是设置gradle代理。

    希望它能为您提供帮助。

答案 12 :(得分:0)

我只是遇到了同样的问题,可以通过替换以前正常运行的项目中的依赖文件来解决。只需将Gradle中的依赖文件替换为另一个项目的依赖Gradle文件即可。

答案 13 :(得分:0)

当我创建一个新项目并标记了androidx但我已连接到Internet时,我遇到了类似的问题。简单的解决方案是仅连接到Internet并再次同步项目。瞧,它的构建没有错误。您可以尝试一下。

答案 14 :(得分:-2)

确保您不在互联网连接中使用代理 在我的情况下,使用移动数据而不是使用本地wifi很好