groovy - 包括gradle中的依赖

标签 groovy gradle

我想在我的gradle项目中包含'org.scribe:scribe:1.3.2'依赖项,我在build.gradle文件中添加了以下内容

  apply plugin: 'groovy'

  repositories {
      mavenCentral()
  }

  dependencies {
    runtime 'org.scribe:scribe:1.3.2'
    compile 'org.codehaus.groovy:groovy-all:2.2.0'
  }

  task fbTask << {
    MyTask mT = new MyTask()
    mT.loginUsingFacebook();
  }

现在在MyTask.groovy中
import org.scribe.model.Token

public void loginUsingFacebook() {
    Token accessToken = //some code
}

它没有找到导入,这表明我们在build.gradle中指定的划线依赖项不起作用。

因此,如何将这种划线依赖项导入到应用程序中,以便可以在Task类中使用它。

最佳答案

这里有一些误解:

  • project.dependencies块中声明的依赖关系是由构建生成的代码,而不是构建所使用的代码。
  • Gradle任务无法使用new实例化。

  • 如何添加由构建本身(通常由构建脚本,任务类或插件类使用)使用的依赖项,取决于放置相应代码的位置。在最简单的情况下,任务类在构建脚本中正确声明,并且其依赖项进入buildscript块:
    buildscript {
        repositories {
            mavenCentral()
        }
        dependencies {
            classpath "org.scribe:scribe:1.3.2"
        }
    }  
    

    要了解有关这些主题的更多信息,请查看Gradle User Guide和完整Gradle发行版中的示例。

    关于groovy - 包括gradle中的依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22163105/

    相关文章:

    java - Windows 10 Gradle : JAVA_HOME is set to an invalid directory

    gradle - 更新 build.gradle 时 IntelliJ 模块设置发生变化

    java - 线程 "main"java.lang.NoClassDefFoundError : org/apache/commons/csv/CSVFormat 中出现异常

    grails - 在为 Grails 应用程序编写 Geb/Spock 测试时,您将如何封装用户的登录操作,以便可以在测试中重用它?

    java - 在Java/gradle/groovy中使用jira-rest-java-client Java库?

    grails - Groovy和GSP中的Markdown超链接

    grails - 找不到Grails公式字段

    java - logback groovy 中的变量替换

    java - Gradle:使用 `Configuration` 及其依赖集找出 Maven 依赖范围

    gradle - Gradlew无法保留3G堆内存。属性设置为1G