依赖实现不起作用

时间:2018-08-15 07:17:37

标签: android android-gradle dependencies build.gradle

因此,资源符号“ R”在MainActivity.java文件中似乎不起作用。我做了一个干净的重建,但是还是没用。

然后我在控制台上收到一条错误消息。它说找不到依赖关系中的实现文件。我该如何纠正?

Console Message

build.gradle(项目)

//顶层构建文件,您可以在其中添加所有子项目/模块共有的配置选项。

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

        // 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
}

build.gradle(Module:app)

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion '27.0.3'

    defaultConfig {
        applicationId "com.example.android.miwok"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}


dependencies {
    implementation 'com.android.support.constraint:constraint-layout:1.1.2'
    compile fileTree(dir: 'libs', include: ['*.jar'])   
    testCompile 'junit:junit:4.12'  
    compile 'com.android.support:appcompat-v7:23.3.0'   
    compile 'com.android.support:support-v4:23.3.0'
    compile 'com.android.support:design:23.3.0'
}

4 个答案:

答案 0 :(得分:0)

在您发布的日志中,没有引用存储ConstraintLayout软件包的Maven Google存储库。

请确保将此存储库添加到主build.gradle文件中。

repositories {
    google()
}

更多信息在这里: https://developer.android.com/training/constraint-layout/

答案 1 :(得分:0)

要在项目中使用ConstraintLayout,请按照以下步骤操作:

  1. 确保在模块级build.gradle文件中声明了maven.google.com存储库:

     repositories {  
        google()  
     }
    
  2. 将库作为依赖项添加到同一build.gradle文件中,如下例所示。请注意,最新版本可能与示例中显示的版本不同:

    dependencies {
        implementation 'com.android.support.constraint:constraint-layout:1.1.2'
    }
    
  3. 在工具栏或同步通知中,单击使用Gradle文件同步项目

此处已描述:Constraint-layout

答案 2 :(得分:0)

也许您需要为gradle文件设置代理

gradle.properties:

systemProp.http.proxyHost=proxy.company.com
systemProp.http.proxyPort=your port
systemProp.https.proxyHost=proxy.company.com
systemProp.https.proxyPort=your port

选中此source

答案 3 :(得分:0)

已解决:

build.gradle(项目)文件中,我将google()添加到了

 allprojects {
    repositories {
        jcenter() 
      }
  }

做到了这一点

allprojects {
    repositories {
       jcenter()
       google()
    }
  }

这是Maven Google存储库吗? 我知道我已解决它,但我完全不知道为什么这是解决方案。如果这是Maven Google存储库,有人可以解释一下吗?