首页 > 解决方案 > 在分离的任务中使用 Gradle 插件

问题描述

以前我有一个根build.gradle文件:

buildscript {
    repositories {
        maven { url "https://plugins.gradle.org/m2/" }
    }
    dependencies {
        classpath "gradle.plugin.se.bjurr.gitchangelog:git-changelog-gradle-plugin:1.55"
    }
}

和模块是build.gradleapply plugin: "se.bjurr.gitchangelog.git-changelog-gradle-plugin"创建自定义任务的地方,该任务继承自插件的任务

class ReleaseNotesTask extends GitChangelogTask {....}

在这种情况下,一切正常,但现在我想提取ReleaseNotesTask到一个单独的文件并将其放入buildScr文件夹。

所以我把与这个插件相关的所有代码都移到了 build.gradle 中buildSrc

buildscript { 
    repositories { 
        maven { 
            url "https://plugins.gradle.org/m2/" 
        } 
    } 
    dependencies { 
        classpath "gradle.plugin.se.bjurr.gitchangelog:git-changelog-gradle-plugin:1.55" 
    } 
}

apply plugin: "se.bjurr.gitchangelog.git-changelog-gradle-plugin"

现在我的任务也移到了buildSrc,无法解析对插件中类的引用。我尝试在 Groovy 和 Kotlin 中创建任务,但没有成功。我看到使用apply plugin:内部根目录build.gradle并不完全正确,但我不明白如何将类从插件导入到我的任务中。

标签: androidgradleandroid-gradle-pluginbuild.gradle

解决方案


推荐阅读