我试图让我的一个项目(ProjectA)生成一个包含所有测试类的jar文件,以便可以在ProjectB中使用。
我做了一些研究,发现这是可能的解决方案:Create test jar artifact in gradle。这说明以下代码片段可以解决问题。
apply plugin: 'java'
task testJar(type: Jar) {
classifier = 'tests'
from sourceSets.test.classes
}
但是,当我将上述内容添加到build.gradle
时,我收到以下错误消息:
- 出了什么问题:
评估根项目'gradle_project'时出现问题。
无法在任务':testJar'上找到属性'sourceSets'。
我已经在Google和Gradle文档上搜索了更多信息,但要么已将其删除而未将其记录在我能找到的任何地方,或者我使用它错了。我怀疑后者,只是不知道我做错了什么。
我在subprojects{}
部分尝试了相同的代码段,但后来收到以下错误消息:
- 出了什么问题:
评估根项目'gradle_project'时出现问题。
无法在源集测试中获取只写属性“类”的值。
答案 0 :(得分:3)
问题已解决:
第1步:将代码段移到subprojects{}
部分
第2步:删除了sourceSets.test.classes。 sourceSets.test.output似乎可以解决问题。找到了这个:Creating a Jar of test binaries - Gradle