在Gradle构建脚本中使用Java类
我有一个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()
。 我读了这篇关于如何在Gradle中使用Groovy类的文章 ,但是我需要我的Java类来自外部JAR文件。 如何在构建源中添加jar? 似乎dependencies
块阻止不会做我期望它做的事情。 谁能给我一个正确方向的提示?
依赖项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() }
现在它应该工作。