【问题标题】:Jacoco - ignore MyClass.1Jacoco - 忽略 MyClass.1
【发布时间】:2016-12-17 14:39:59
【问题描述】:

如何在 Jacoco 覆盖中忽略 *.1 类?

我的 POM 中有以下内容:

<execution>
  <id>JaCoco Coverage Enforcement</id>
  <phase>verify</phase>
  <goals>
    <goal>check</goal>
  </goals>
  <configuration>
  <dataFile>${project.build.directory}/coverage-reports/jacoco-unit.exec</dataFile>
  <excludes>
    <exclude>**/MyClass.**</exclude>
  </excludes>
  <rules>
    ...
  </rules>
</execution>

但是,我收到以下错误消息:

[警告] com.mypackage.MyClass.1 类违反规则:行覆盖率是 0.00,但预期最小值是 0.85

19 年 12 月更新

这是文件夹结构中的内容:

$ find . -iname 'MyClass*class'
./target/classes/com/mypackage/MyClass$1.class
./target/classes/com/mypackage/MyClass.class

【问题讨论】:

  • 能否请您澄清一下您在磁盘上有什么 - 文件 MyClass.1.class 或文件 1.class 在目录 MyClass 中?实际上,在纯 Java 的情况下,两者看起来都很奇怪。我猜你使用了一些生成此类类的字节码生成工具?
  • 我在上面添加了磁盘数据。我实际上并没有做任何太时髦的事情,该项目是一个在 Java 8 下运行的非常简单的 Spring Boot 应用程序。

标签: java jacoco jacoco-maven-plugin


【解决方案1】:

Exclusion pattern for verify goal 可以是**/MyClass$**,如果您只想排除文件MyClass$1.class(注意美元符号的位置,您有点)。如果你想同时排除MyClass.classMyClass$1.class,那么pattern 可以是**/MyClass**

【讨论】:

    猜你喜欢
    • 2019-10-09
    • 1970-01-01
    • 1970-01-01
    • 2019-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-29
    相关资源
    最近更新 更多