Gradle 在单独的文件中使用“添加依赖项和插件”;申请自";在格拉德尔

Gradle 在单独的文件中使用“添加依赖项和插件”;申请自";在格拉德尔,gradle,gradle-plugin,Gradle,Gradle Plugin,我的build.gradle应用程序目录中包含: apply plugin: 'com.android.application' buildscript { repositories { mavenCentral() jcenter() maven { url "https://maven.google.com" } } dependencies { classpa

我的
build.gradle
应用程序目录中包含:

apply plugin: 'com.android.application'

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

    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.0'
    }
}

allprojects {
    repositories {
        mavenCentral();
        jcenter()
    }
}
def hasBuildExtras = file('build-extras.gradle').exists()
if (hasBuildExtras) {
    apply from: 'build-extras.gradle'
}
这是我的
buildextras.gradle
文件:

buildscript {
    repositories {
        mavenCentral()
        jcenter()
        maven {
            url "https://maven.google.com"
        }
    }
    dependencies {
        classpath 'com.github.triplet.gradle:play-publisher:1.2.2'
    }
}

apply plugin: 'com.github.triplet.play'
我假设
build extras.gradle
应该“合并”到原始文件中,对吗?无论我如何移动它,都会发现
错误:找不到id为'com.github.triplet.play'的插件。

如果我将
classpath'com.github.triplet.gradle:play publisher:1.2.2'
移动到主文件,只保留
apply plugin'com.github.triplet.play'
内部
build extras.gradle
就可以了。那么,我是否定义了依赖项?build.gradle文件只能有一个
buildscript
块。你对段落的解释是正确的。在
buildscript
中,将插件依赖项添加到主生成文件的
dependentials
块中,然后使用您喜欢的任何逻辑有条件地应用插件。

我的问题是原始
buildscript
已生成,因此我无法真正修改它。该文件应该是
扩展的
。我想我必须寻找其他的解决办法。非常感谢。