Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

JaCoCo test coverage: How to exclude a class inside jar from report?

In JBoss AS 7 integration testsuite, we use JaCoCo for code coverage. I have the execution data already. Now when generating the report, I get "Can't add different class with same name: ..." So I have to exclude some jars.

<exclude name="org/jboss/osgi/framework/main/jbosgi-resolver-metadata-1.0.10.jar"/>

The problem is that only one class is duplicated (org/jboss/osgi/metadata/internal/AbstractPackageAttribute). I only want that particular class excluded, not whole jar.

I've tried:

 <exclude name="org/jboss/osgi/framework/main/**/AbstractPackageAttribute*"/>

But that doesn't work. Is there some special syntax, like .../foo.jar!**/ClassName.class?

like image 719
Ondra Žižka Avatar asked Feb 03 '12 17:02

Ondra Žižka


1 Answers

Use the zipfileset tag:

<sourcefiles>
  <zipfileset>
    <fileset dir="foo.jar">
      <exclude name="org/jboss/osgi/framework/main/**/AbstractPackageAttribute*.*"/>
    </fileset>
  </zipfileset>
</sourcefiles>
like image 58
rb512 Avatar answered Sep 28 '22 09:09

rb512