我有这个文件夹结构:
每个子项目都有自己的build.gradle配置。 我在子项目1和3中进行了一些测试(子项目2不包含任何测试,我不确定我的问题是否需要此信息)。
我在测试中使用JUnit5。为了在构建项目时执行它们,我将其添加到子项目的每个build.gradle中。
tasks.test {
useJUnitPlatform()
}
一切正常,所有测试都在执行,但是我不想触碰这个小片段的每个配置文件。我想要一些共同点。
我一直在尝试制作gradle-docs中的文档,但没有成功。
这就是我要在根目录build.gradle中添加的内容:
subprojects {
tasks.test(){
doLast {
useJUnitPlatform()
}
}
}
但是它要么说已经定义了“测试”,要么类似“无法在类型为org.gradle.api.internal.tasks.DefaultTaskContainer的任务集上为参数[buildClosure]找到方法test()。” >
感谢您的帮助!
答案 0 :(得分:2)
在project / build.gradle中设置以下内容
subprojects {
apply plugin : 'java'
test.useJUnitPlatform()
}
现在,在根项目中将测试任务配置为对其所有子项目使用junit5。注意,“ java”插件也适用于子项目。现在,任何子项目都已在根项目级别本身进行了预先配置。
答案 1 :(得分:0)
您一直在想太复杂了。更容易。只需添加
subprojects {
test {
useJUnitPlatform()
}
}
访问项目的顶级build.gradle
文件。您可以(大部分)在此块中添加应在每个子项目中完成的任何事情。