Gradle: 找不到sourceSets.test.classes

5
我正在尝试使我的一个项目(ProjectA)生成包含所有测试类的jar文件,以便在ProjectB中使用。
我做了一些研究,并发现以下可能是解决方案:使用Gradle创建测试jar构件。它说以下代码片段应该能够解决问题。
apply plugin: 'java'

task testJar(type: Jar) {
   classifier = 'tests'
   from sourceSets.test.classes
}

然而,当我将以上内容添加到我的build.gradle中时,我收到了以下错误信息:
  • 出现了什么问题:

评估根项目“gradle_project”时发生问题。

在任务“:testJar”上找不到属性“sourceSets”。

我已经在谷歌和Gradle文档中搜索了更多信息,但要么它已被删除而没有在任何地方记录,要么我使用方法不正确。我怀疑后者,只是不知道我做错了什么。
我尝试将相同的代码片段放在我的subprojects{}部分内,但是我得到了以下错误信息:
  • 出现了什么问题:

评估根项目“gradle_project”时发生问题。

无法获取源设置测试上的只写属性“classes”的值。

1个回答

5
我用以下步骤解决了这个问题:
第一步:将代码片段移动到subprojects {}部分内。
第二步:已经删除了sourceSets.test.classes。似乎sourceSets.test.output可以奏效。找到了这篇文章:Creating a Jar of test binaries - Gradle

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接