Gradle 和插件恶作剧,用于多模块构建
Gradle and Plugin shenanigans, for multi-module builds
所以我有一个多模块项目,它使用 gradle 构建了很多东西,包括一些 AWS Lambda、Java(Spring Boot)微服务和 ReactJS webapp .
为此,我想生成一些 Jacoco 代码覆盖率报告以掌握最新情况。所以目前我有这个:
subprojects {
apply plugin: 'jacoco'
plugins.withType(JavaPlugin) {
jacoco {
toolVersion = "0.8.5"
}
}
}
哪个“有效”。但是,如果我将其更改为:
subprojects {
plugins.withType(JavaPlugin) {
apply plugin: 'jacoco'
jacoco {
toolVersion = "0.8.5"
}
}
}
Gradle 在尝试构建第一个 Java 项目时失败 hard。我的意思是我真的不介意,您必须将 jacoco 插件应用于其中没有任何 Java 代码的子项目,这真的很奇怪。有人吗?
参见文档中的示例 3(仅在某些子项目上应用插件)https://docs.gradle.org/current/userguide/plugins.html
即在你的情况下:
plugins {
id 'jacoco' version '1.0.0' apply false
}
subprojects {
if (name.startsWith('myjacostuff')) {
apply plugin: 'jacoco'
}
plugins.withType(JavaPlugin) {
jacoco {
toolVersion = "0.8.5"
}
}
}
所以我有一个多模块项目,它使用 gradle 构建了很多东西,包括一些 AWS Lambda、Java(Spring Boot)微服务和 ReactJS webapp .
为此,我想生成一些 Jacoco 代码覆盖率报告以掌握最新情况。所以目前我有这个:
subprojects {
apply plugin: 'jacoco'
plugins.withType(JavaPlugin) {
jacoco {
toolVersion = "0.8.5"
}
}
}
哪个“有效”。但是,如果我将其更改为:
subprojects {
plugins.withType(JavaPlugin) {
apply plugin: 'jacoco'
jacoco {
toolVersion = "0.8.5"
}
}
}
Gradle 在尝试构建第一个 Java 项目时失败 hard。我的意思是我真的不介意,您必须将 jacoco 插件应用于其中没有任何 Java 代码的子项目,这真的很奇怪。有人吗?
参见文档中的示例 3(仅在某些子项目上应用插件)https://docs.gradle.org/current/userguide/plugins.html
即在你的情况下:
plugins {
id 'jacoco' version '1.0.0' apply false
}
subprojects {
if (name.startsWith('myjacostuff')) {
apply plugin: 'jacoco'
}
plugins.withType(JavaPlugin) {
jacoco {
toolVersion = "0.8.5"
}
}
}