“compile”语句在build.Gradle中的位置在哪里?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了“compile”语句在build.Gradle中的位置在哪里?相关的知识,希望对你有一定的参考价值。

我需要在我的项目中添加一个android.support.v4.widget.NestedScrollView,这需要根据this question的V4支持库。在答案中说。 。 。

您需要在依赖项中添加此行:

编译'com.android.support:support-v4:23.4.0'

...我假设引用了build.gradle文件。我有两个 - 顶级和模块一个。只有我的顶级关键字有一个依赖关键字,所以我把它放在那里。但是当我做到了

错误:(8,0)未找到Gradle DSL方法:'compile()'

...这是在this question herethis question中解决的,它表示我需要将它移动到我的模块的build.gradle。但模块build.gradle有一个完全不同的结构,所以我不知道它在哪里。

我的顶级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.1.2'
        compile 'com.android.support:support-v4:23.4.0'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

我的模块级别如下所示:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 16
    buildToolsVersion "23.0.3"

    defaultConfig {
        applicationId "com.assemblyguide.remote"
        minSdkVersion 16
        targetSdkVersion 16
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}

我在哪里将compile语句(或它所包含的依赖项子句)放在模块build.gradle中以避免该错误,为什么两个build.gradle文件看起来如此完全不同?

奖金问题:我是Android Studio的新手,我不需要知道Eclipse的这些东西。我应该计划使用多少Gradle专家来使用Android Studio,哪里可以基本了解Gradle而无需获得博士学位?

答案

我建议您下载完整的Gradle分发版,该分发版附带“用户指南”PDF。从上到下阅读,跳过与您无关的章节。你可以避免提出很多问题。

Direct link to Gradle User Manual pdf

在您的情况下,您应该删除在“buildscript”块中添加的“compile”行。您可能需要使用以下内容替换“allprojects”块:

allprojects {
    repositories {
        jcenter()
    }    
    dependencies {
        compile 'com.android.support:support-v4:23.4.0'
    }
}
另一答案

您应该在主项目模块的末尾声明依赖项。通常它是app模块。在那里找到build.gradle文件,并按照here显示的说明进行操作 它看起来应该像this one

以上是关于“compile”语句在build.Gradle中的位置在哪里?的主要内容,如果未能解决你的问题,请参考以下文章

useLibrary的原理与build.gradle中的compile files('')有什么区别?

Gradle 依赖&解决依赖冲突

gradle之implementation 和compile的区别

gradle 之compileSdkVersion,buildToolsVersion等

Build.gradle无法解析com.android.support

idea gradle 热部署