Gradle构建错误:无法解决:

时间:2017-05-24 03:20:33

标签: android android-studio android-gradle build.gradle

我刚刚下载了Android Studio并创建了一个新项目,并且我遇到了gradle构建错误:

  

无法解决:com.android.support.test.espresso-core:2.2.2

  

无法解决:com.android.support.appcompat-v7:25.3.1

在启动android studio作为管理员时重新安装SDK Tools + Repository + API时,此错误已解决。

我已经安装了API Level 25,这是我想要构建并已下载SDK Build-Tools的内容。我也已经下载了支持库

这是我的应用文件:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion '25.0.3'
    defaultConfig {
        applicationId "com.jtsalas.mirrorcontrol"
        minSdkVersion 25
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_6
        targetCompatibility JavaVersion.VERSION_1_7
    }
    productFlavors {
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    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:25.3.1'
    testCompile 'junit:junit:4.12'
}

的build.gradle:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.2'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

7 个答案:

答案 0 :(得分:2)

从SDK管理器中,确保您已安装Android支持存储库和Google存储库并且是最新的。然后,您应该能够在/ extras / android / m2repository目录的子文件夹中找到相关工件

答案 1 :(得分:1)

根据您的错误,您似乎不包括espresso库。解决方案是添加espresso核心库,这是Android测试支持库的一部分,该库托管在谷歌的Maven存储库中,认为这是一种git存储库,但是对于依赖项。

因此,我们告诉gradle构建系统通过指定其URL来查看Maven存储库中的依赖项。

这是通过在存储库块下的应用程序级build.gradle文件中添加Maven url来完成的。

repositories {
    jcenter()
    maven{
        url "https://maven.google.com"
    }
}

并在模块级build.gradle文件中提及您想要从maven存储库获取的依赖项,如下所示:

dependencies{
//other dependencies go here

//testing dependencies
androidTestCompile 'com.android.support.test.espresso:espresso-core:3.0.1'
}

这就是在应用程序级build.gradle文件中包含Maven存储库URL的原因,希望这会有所帮助。

答案 2 :(得分:1)

在project.gradle文件中, allprojects 根的对齐方式如下:

allprojects {
  repositories {
      google()
      jcenter()
      maven { url "https://jitpack.io" }
   }
}

jitpack 用作多个库的依赖项,如果您不使用不需要它的任何种类的库,则不包括行号。

答案 3 :(得分:0)

嗯,我不知道完美的答案,但是......与我的SDK工具比较怎么样?

Imgur

答案 4 :(得分:0)

我通过卸载Android工作室并在我的C:\ Users [用户名]中删除旧版Android Studio并以管理员身份重新安装Android Studio解决了这个问题。

答案 5 :(得分:0)

好像你更新了android studio并在其中打开了以前的项目。最简单的方法是创建新的项目和副本 1. compileSdkVersion 26 2. buildToolsVersion" 26.0.1" 3. targetSdkVersion 26 4. compile' com.android.support:appcompat-v7:26。+'  并将它们粘贴到app level build gradle中的适当位置。 它会要求更新以利用它...允许它更新。 祝你好运......这对我有用。

答案 6 :(得分:0)

做2项工作:

1)清理项目

2)文件->无效