我有一个Gradle构建脚本,它必须在Task中实例化Java类并在创建的对象上调用方法。目前,我有以下内容:
apply plugin: 'java'
dependencies {
compile files("libs/some.library.jar")
}
task A << {
def obj = new some.library.TestClass()
obj.doSomething()
}
问题是找不到类some.library.TestClass()
。我阅读this article关于如何在Gradle中使用Groovy类,但我需要我的Java类来自外部JAR文件。如何在构建源中添加jar?似乎dependencies
块没有按照我的预期去做。任何人都可以给我一个正确方向的暗示吗?
答案 0 :(得分:7)
依赖项compile files("libs/some.library.jar")
作为项目依赖项添加,而不是脚本依赖项本身。您需要做的是在脚本的classpath
范围中添加此依赖项。
apply plugin: 'java'
buildscript {
dependencies {
classpath files("libs/some.library.jar")
}
}
task A << {
def obj = new some.library.TestClass()
obj.doSomething()
}
现在应该可以了。