我知道如何忽略在自己的.java文件中定義的類,但不知道如何忽略內部類。例如,我有 A 類和嵌套的 B 類:class A {? ? ...? ? static class B {? ? ? ? ...? ? }}jacocoTestReport當我想使用jacoco.gradle此語法忽略文件中的它們時,不斷檢查覆蓋范圍:(setFrom部分適用于 Gradle 的更高版本,其中classDirectories = files()已棄用)apply plugin: "jacoco"jacoco {? ? toolVersion = "0.8.3"}jacocoTestReport {? ? afterEvaluate {? ? ? ? classDirectories.setFrom(files(classDirectories.files.collect {? ? ? ? ? ? fileTree(dir: it,? ? ? ? ? ? ? ? ? ? exclude: [? ? ? ? ? ? ? ? ? ? ? ? ? ? "com/example/xxx/*",? ? ? ? ? ? ? ? ? ? ? ? ? ? "com/example/xxx/A\$.*B*"? ? ? ? ? ? ? ? ? ? ])? ? ? ? }))? ? }}($必須轉義,而在帖子中則不需要,因為當我使用Gradle時他使用Maven)那么,我怎樣才能忽略這個內部類呢?
1 回答

開滿天機
TA貢獻1786條經驗 獲得超13個贊
經過多次嘗試和失敗,我終于找到了答案。似乎命名模式遵循已編譯的 Java 類命名約定,如另一篇文章中提到的,并且不需要.
外部類和內部類之間的命名。所以,它應該是這樣的A$B
。而且,可能會有一些.class
干擾(我的猜測),所以我添加了A$B*
(對于其他普通類,*
不需要最后一個)。
所以就變成了:
"com/example/xxx/A\$B*"
我希望有一些關于這種排除模式的文檔。目前還沒有。
添加回答
舉報
0/150
提交
取消