Android “在哪里?”;编撰;语句进入构建,Gradle?

Android “在哪里?”;编撰;语句进入构建,Gradle?,android,gradle,Android,Gradle,我需要在我的项目中添加一个android.support.v4.widget.NestedScrollView,它需要v4支持库。 答案是 您需要在依赖项中添加此行: 编译'com.android.support:support-v4:23.4.0' …我认为这是指build.gradle文件。我有两个——一个是顶级课程,一个是模块一。只有我的顶层有一个dependencies关键字,所以我把它放在那里。但当我这么做的时候,我得到了 错误:(8,0)找不到Gradle DSL方法:“compil

我需要在我的项目中添加一个android.support.v4.widget.NestedScrollView,它需要v4支持库。 答案是

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

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

…我认为这是指build.gradle文件。我有两个——一个是顶级课程,一个是模块一。只有我的顶层有一个dependencies关键字,所以我把它放在那里。但当我这么做的时候,我得到了

错误:(8,0)找不到Gradle DSL方法:“compile()”

…在中解决了该问题,并指出我需要将其移动到模块的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'
        }
    }
}
我的第一级模块如下所示:

// 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'
        }
    }
}
在模块build.gradle中,我应该将compile语句(或它所包含的dependencies子句)放在哪里以避免该错误,为什么这两个build.gradle文件看起来如此完全不同


附加问题:我是Android Studio的新手,我不需要知道Eclipse的这些东西。我应该计划在多大程度上成为一名Gradle专家来使用Android Studio?我在哪里可以获得对Gradle的基本了解,而不必获得该领域的博士学位

我建议您下载完整的Gradle发行版,它与“用户指南”PDF一起提供。从上到下阅读,跳过与你真正无关的章节。这样你就不用问很多问题了

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

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

您应该在主项目模块的末尾声明依赖项。通常是
app
模块。在那里找到一个
build.gradle
文件,并按照所示说明操作
应该是这样的