我正在尝试将Jacoco配置为从分析中排除某些类,但找不到任何有效的示例:(
我发现一些afterEvaluate
的样品,但没有成功
答案 0 :(得分:1)
src/main/java/org/example/A.java
:
package org.example;
class A {
}
src/main/java/org/example/B.java
:
package org.example;
class B {
}
src/test/java/org/example/ExampleTest.java
:
package org.example;
public class ExampleTest {
@org.junit.Test
public void test() {
new A();
new B();
}
}
build.gradle.kts
:
plugins {
java
jacoco
}
repositories {
mavenCentral()
}
dependencies {
testCompile("junit:junit:4.12")
}
使用Gradle 5.4.1执行gradle test jacocoTestReport
会产生以下报告
添加到build.gradle.kts
tasks.withType<JacocoReport> {
classDirectories.setFrom(
sourceSets.main.get().output.asFileTree.matching {
exclude("org/example/B.class")
}
)
}
执行同一命令会产生以下报告
答案 1 :(得分:1)
只需添加到@Godin的出色答案中即可:
@Godin解释的方式,您必须运行MainMenu
,这还不错,但是如果您想让jacoco在仅运行gradle test jacocoTestReport
的情况下运行,请将其添加到build.gralde中。 kts:
gradle test