title: Missing Jacoco Code Coverage and IncompatibleClassChangeError
body: <p>I have a maven project with some Arquillian Tests (Drone/Graphene Tests included). </p>
  
  <p>When I build my project using maven all my Arquillian Tests that use Graphene and Drone or Warp will fail with following exception</p>
  
  <pre><code>Running de.mmo.arq.model.diverses.stammdaten.geldinstitut.GeldinstitutBlzTest
  Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 4.862 sec &lt;&lt;&lt; FAILURE! - in de.mmo.arq.model.diverses.stammdaten.geldinstitut.GeldinstitutBlzTest
  de.mmo.arq.model.diverses.stammdaten.geldinstitut.GeldinstitutBlzTest  Time elapsed: 4.862 sec  &lt;&lt;&lt; ERROR!
  org.jboss.shrinkwrap.api.exporter.ArchiveExportException: Failed to write asset to output: /WEB-INF/classes/de/mmo/base/dao/CrudService.class
  Caused by: java.lang.IncompatibleClassChangeError: class org.jacoco.core.internal.flow.ClassProbesVisitor has interface org.objectweb.asm.ClassVisitor as super class
  </code></pre>
  
  <p>This is the place where the magic should happen</p>
  
  <pre><code>&lt;build&gt;
      &lt;finalName&gt;browser&lt;/finalName&gt;
      &lt;plugins&gt;
          &lt;plugin&gt;
              &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
              &lt;artifactId&gt;maven-compiler-plugin&lt;/artifactId&gt;
              &lt;version&gt;3.2&lt;/version&gt;
              &lt;configuration&gt;
                  &lt;source&gt;1.7&lt;/source&gt;
                  &lt;target&gt;1.7&lt;/target&gt;
              &lt;/configuration&gt;
          &lt;/plugin&gt;
          &lt;plugin&gt;
              &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
              &lt;artifactId&gt;maven-release-plugin&lt;/artifactId&gt;
              &lt;version&gt;2.5.3&lt;/version&gt;
              &lt;configuration&gt;
                  &lt;tagBase&gt;...&lt;/tagBase&gt;
                  &lt;useReleaseProfile&gt;false&lt;/useReleaseProfile&gt;
              &lt;/configuration&gt;
          &lt;/plugin&gt;
      &lt;/plugins&gt;
  &lt;/build&gt;
  &lt;profiles&gt;
      &lt;profile&gt;
          &lt;id&gt;jacoco&lt;/id&gt;
          &lt;dependencies&gt;
              &lt;dependency&gt;
                  &lt;groupId&gt;org.jacoco&lt;/groupId&gt;
                  &lt;artifactId&gt;org.jacoco.core&lt;/artifactId&gt;
                  &lt;scope&gt;test&lt;/scope&gt;
              &lt;/dependency&gt;
          &lt;/dependencies&gt;
          &lt;build&gt;
              &lt;plugins&gt;
                  &lt;plugin&gt;
                      &lt;groupId&gt;org.jacoco&lt;/groupId&gt;
                      &lt;artifactId&gt;jacoco-maven-plugin&lt;/artifactId&gt;
                      &lt;version&gt;${jacoco}&lt;/version&gt;
                      &lt;executions&gt;
                          &lt;execution&gt;
                              &lt;goals&gt;
                                  &lt;goal&gt;prepare-agent&lt;/goal&gt;
                              &lt;/goals&gt;
                          &lt;/execution&gt;
                          &lt;execution&gt;
                              &lt;id&gt;report&lt;/id&gt;
                              &lt;phase&gt;prepare-package&lt;/phase&gt;
                              &lt;goals&gt;
                                  &lt;goal&gt;report&lt;/goal&gt;
                              &lt;/goals&gt;
                          &lt;/execution&gt;
                      &lt;/executions&gt;
                  &lt;/plugin&gt;
              &lt;/plugins&gt;
          &lt;/build&gt;
      &lt;/profile&gt;
      &lt;profile&gt;
          &lt;id&gt;arq-wildfly&lt;/id&gt;
          &lt;build&gt;
              &lt;plugins&gt;
                  &lt;plugin&gt;
                      &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
                      &lt;artifactId&gt;maven-surefire-plugin&lt;/artifactId&gt;
                      &lt;version&gt;${maven.surefire}&lt;/version&gt;
                      &lt;configuration&gt;
                          &lt;skipTests&gt;false&lt;/skipTests&gt;
                          &lt;systemPropertyVariables&gt;
                              &lt;arquillian.launch&gt;wildfly-remote&lt;/arquillian.launch&gt;
                          &lt;/systemPropertyVariables&gt;
                      &lt;/configuration&gt;
                  &lt;/plugin&gt;
              &lt;/plugins&gt;
          &lt;/build&gt;
      &lt;/profile&gt;
      &lt;profile&gt;
          &lt;id&gt;default&lt;/id&gt;
          &lt;activation&gt;
              &lt;activeByDefault&gt;true&lt;/activeByDefault&gt;
          &lt;/activation&gt;
          &lt;build&gt;
              &lt;plugins&gt;
                  &lt;plugin&gt;
                      &lt;artifactId&gt;maven-surefire-plugin&lt;/artifactId&gt;
                      &lt;version&gt;${maven.surefire}&lt;/version&gt;
                      &lt;configuration&gt;
                          &lt;skipTests&gt;true&lt;/skipTests&gt;
                      &lt;/configuration&gt;
                  &lt;/plugin&gt;
                  &lt;plugin&gt;
                      &lt;groupId&gt;org.wildfly.plugins&lt;/groupId&gt;
                      &lt;artifactId&gt;wildfly-maven-plugin&lt;/artifactId&gt;
                      &lt;version&gt;${wildfly.maven-plugin}&lt;/version&gt;
                  &lt;/plugin&gt;
              &lt;/plugins&gt;
          &lt;/build&gt;
      &lt;/profile&gt;
  &lt;/profiles&gt;
  </code></pre>
  
  <p>I'm using mvn to build my project with this goals <strong><em>clean package -fae</em></strong> with this profiles <strong><em>jacoco arq-wildfly</em></strong></p>
  
  <p>The build fails and the jacoco.exec file is created at my target directory. </p>
  
  <p>If I remove the goal <strong>prepare-agent</strong> in the jacoco profile and run the same mvn command (<strong>clean package -fae</strong>) with the profiles <strong>jacoco arq-wildfly</strong> all my tests finish successfull but without creating the jacoco.exec file.</p>
  
  <p>What I'm doing wrong? Does someone have a working example using Arquillian with Drone/Graphene Tests and Jacoco for code coverage?</p>
  
  <p>For additional information about my environment:</p>
  
  <ul>
  <li>Wildfly 10</li>
  <li>Arquillian Core 1.1.11.Final</li>
  <li>Arquillian Drone 1.3.1.Final</li>
  <li>Arquillian Graphene 2.1.0.Beta1</li>
  <li>Arquillian Jacoco 1.0.0.Alpha8</li>
  <li>Jacoco 0.7.6.201602180812</li>
  </ul>