如何在Gradle中的buildSrc下的自定义任务中使用第三方依赖项

时间:2015-12-28 23:07:44

标签: java groovy gradle

我已按照本指南使用Gradle创建自定义任务。 http://www.ysofters.com/2015/02/26/how-to-create-gradle-project-with-custom-task-classes-in-groovy/ 我也看了一下gradle doc。 https://docs.gradle.org/current/userguide/custom_tasks.html

非常清楚,我可以通过示例来编译和使用这些任务,所以到目前为止一切都很好。

但是,示例仅显示gradle api文件的导入,即

import org.gradle.api.DefaultTask
import org.gradle.api.tasks.TaskAction

我想添加更多依赖项,即

import org.springframework.beans.factory.config.YamlPropertiesFactoryBean
import org.springframework.core.io.FileSystemResource

但是我可以这样做 - gradle会抱怨并说“无法解决课程......”

我还尝试在build.gradle的buildscript->依赖关系闭包下设置spring-core和apache-commons,但它没有任何区别,即

buildscript {
 dependencies {

        classpath group: 'org.springframework', name: 'spring-core', version: springVersion
        classpath group: 'org.apache.commons', name: 'commons-lang3', version: '3.4'
      .....

那么,我错过了什么 - 如何在自定义任务类中使用第三方依赖项?

1 个答案:

答案 0 :(得分:8)

您需要将build.gradle文件放入buildSrc目录。您可以从gradle项目本身签出buildSrc/build.gradle文件作为示例:https://github.com/gradle/gradle/blob/v4.1.0/buildSrc/build.gradle