Okay, following the advice of the same co-worker that pointed me to this users 
group, I also took a look at another project's "pom.xml" files, and modified 
the mentioned Parent and Child "pom.xml" files accordingly.  Then this morning 
when I came in I replaced the two references to version 0.5.10.201208310627 
with 0.6.4.201312101107 as Marc suggested.  Then I ran "mvn clean install -P 
create-jacoco-reports".  It finished with a declaration of "BUILD SUCCESS", but 
when I went looking for a "jacoco.xml" file I couldn't find one anywhere.  
Yesterday I was getting a "jacoco.xml" file, albeit one too small to be of much 
use, but now I'm not getting any "jacoco.xml" file at all.

I took a look at the output of the Maven command and did a search on "jacoco" 
and the interesting results I got are included at the end of this article, 
followed by the "pom.xml" for the Parent and the "pom.xml" for the Child.  Any 
idea what these messages mean and how I can fix my "pom.xml" files so that my 
Maven command actually generates a "jacoco.xml"?

Kevin S

 ##############################################################################

...
[INFO] --- jacoco-maven-plugin:0.6.4.201312101107:prepare-agent (agent) @ 
tree-data-parent ---
[INFO] Skipping JaCoCo for project with packaging type 'pom'
[INFO] 
[INFO] --- jacoco-maven-plugin:0.6.4.201312101107:prepare-agent (pre-test) @ 
tree-data-parent ---
[INFO] Skipping JaCoCo for project with packaging type 'pom'
[INFO] 
[INFO] --- jacoco-maven-plugin:0.6.4.201312101107:prepare-agent 
(jacoco-intialize) @ tree-data-parent ---
[INFO] Skipping JaCoCo for project with packaging type 'pom'
[INFO] 
[INFO] --- jacoco-maven-plugin:0.6.4.201312101107:report (report) @ 
tree-data-parent ---
[INFO] Skipping JaCoCo for project with packaging type 'pom'
...
[INFO] --- jacoco-maven-plugin:0.6.4.201312101107:prepare-agent (agent) @ 
tree-data-parent ---
[INFO] Skipping JaCoCo for project with packaging type 'pom'
[INFO] 
[INFO] --- jacoco-maven-plugin:0.6.4.201312101107:prepare-agent (pre-test) @ 
tree-data-parent ---
[INFO] Skipping JaCoCo for project with packaging type 'pom'
[INFO] 
[INFO] --- jacoco-maven-plugin:0.6.4.201312101107:prepare-agent 
(jacoco-intialize) @ tree-data-parent ---
[INFO] Skipping JaCoCo for project with packaging type 'pom'
...
[INFO] --- jacoco-maven-plugin:0.6.4.201312101107:report (report) @ tree-data 
---
[INFO] Skipping JaCoCo execution due to missing execution data file
...
[INFO] --- jacoco-maven-plugin:0.6.4.201312101107:report (report) @ 
tree-acceptance-of-ct ---
[INFO] Skipping JaCoCo execution due to missing execution data file
...
-------------------------------------------------------
 T E S T S
-------------------------------------------------------
java.lang.instrument.IllegalClassFormatException: Error while instrumenting 
class org/familysearch/tree/ws/services/BaseService.
        at 
org.jacoco.agent.rt.internal_6effb9e.CoverageTransformer.transform(CoverageTransformer.java:89)
        ...
        at 
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
Caused by: java.io.IOException: Error while instrumenting class 
org/familysearch/tree/ws/services/BaseService.
        at 
org.jacoco.agent.rt.internal_6effb9e.core.instr.Instrumenter.instrumentError(Instrumenter.java:147)
        at 
org.jacoco.agent.rt.internal_6effb9e.core.instr.Instrumenter.instrument(Instrumenter.java:98)
        at 
org.jacoco.agent.rt.internal_6effb9e.CoverageTransformer.transform(CoverageTransformer.java:87)
        ... 27 more
Caused by: java.lang.IllegalStateException: Missing or invalid stackmap frames.
        at 
org.jacoco.agent.rt.internal_6effb9e.core.internal.instr.FrameTracker.assertValidFrames(FrameTracker.java:613)
        at 
org.jacoco.agent.rt.internal_6effb9e.core.internal.instr.FrameTracker.pop(FrameTracker.java:602)
        at 
org.jacoco.agent.rt.internal_6effb9e.core.internal.instr.FrameTracker.visitVarInsn(FrameTracker.java:386)
        at 
org.jacoco.agent.rt.internal_6effb9e.asm.MethodVisitor.visitVarInsn(Unknown 
Source)
        at 
org.jacoco.agent.rt.internal_6effb9e.asm.MethodVisitor.visitVarInsn(Unknown 
Source)
        at 
org.jacoco.agent.rt.internal_6effb9e.asm.tree.VarInsnNode.accept(Unknown Source)
        at 
org.jacoco.agent.rt.internal_6effb9e.asm.tree.InsnList.accept(Unknown Source)
        at 
org.jacoco.agent.rt.internal_6effb9e.asm.tree.MethodNode.accept(Unknown Source)
        at 
org.jacoco.agent.rt.internal_6effb9e.core.internal.flow.ClassProbesAdapter$1.visitEnd(ClassProbesAdapter.java:124)
        at org.jacoco.agent.rt.internal_6effb9e.asm.ClassReader.b(Unknown 
Source)
        at org.jacoco.agent.rt.internal_6effb9e.asm.ClassReader.accept(Unknown 
Source)
        at org.jacoco.agent.rt.internal_6effb9e.asm.ClassReader.accept(Unknown 
Source)
        at 
org.jacoco.agent.rt.internal_6effb9e.core.instr.Instrumenter.instrument(Instrumenter.java:78)
        at 
org.jacoco.agent.rt.internal_6effb9e.core.instr.Instrumenter.instrument(Instrumenter.java:96)
        ... 28 more
...
[INFO] --- jacoco-maven-plugin:0.6.4.201312101107:report (report) @ 
tree-component-tests ---
[INFO] Skipping JaCoCo execution due to missing execution data file
...
[INFO] --- jacoco-maven-plugin:0.6.4.201312101107:report (report) @ 
tree-data-acceptance ---
[INFO] Skipping JaCoCo execution due to missing execution data file
...

 ##############################################################################

<?xml version="1.0" encoding="UTF-8"?>
<project ...>
  ...
  <name>Parent</name>
  ...
  <properties>
    ...
    <jacoco.argLine/>
    ...
    <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
    ...
    <sonar.java.codeCoveragePlugin>jacoco</sonar.java.codeCoveragePlugin>
    
<sonar.jacoco.reportPath>${project.basedir}/../tree-component-tests/target/jacoco.exec</sonar.jacoco.reportPath>
    <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
    ...
    <jacoco.version>0.6.3.201306030806</jacoco.version>
    ...
  </properties>
  <profiles>
    <profile>
      <id>create-jacoco-reports</id>
      <activation>
        <property>
          <name>component.pipeline</name>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>org.jacoco</groupId>
            <artifactId>jacoco-maven-plugin</artifactId>
            <version>0.6.4.201312101107</version>
            <configuration>
              <destFile>${project.basedir}/../target/jacoco.exec</destFile>
              <append>true</append>
              <excludes>
                <exclude>**/*Test.*</exclude>
              </excludes>
            </configuration>
            <executions>
              <execution>
                <id>jacoco-intialize</id>
                <goals>
                  <goal>prepare-agent</goal>
                </goals>
              </execution>
              <execution>
                <id>report</id>
                <phase>prepare-package</phase>
                <goals>
                  <goal>report</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    ...
  </profiles>
  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>versions-maven-plugin</artifactId>
          <version>${versions-maven-plugin.version}</version>
          <configuration>
            ...
            <properties>
              ...
              <property>
                <name>jacoco-maven-plugin.version</name>
                <version>[0.5.6.0,)</version>
              </property>
              ...
            </properties>
          </configuration>
        </plugin>
        ...
        <plugin>
          <groupId>org.jacoco</groupId>
          <artifactId>jacoco-maven-plugin</artifactId>
          <version>${jacoco.version}</version>
          <configuration>
            <destFile>${project.basedir}/../target/jacoco.exec</destFile>
            <append>true</append>
            <excludes>
              <exclude>**/*Test.*</exclude>
            </excludes>
          </configuration>
          <executions>
            <execution>
              <id>agent</id>
              <goals>
                <goal>prepare-agent</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
        ...
      </plugins>
    </pluginManagement>
    <plugins>
      <plugin>
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
        <executions>
          <execution>
            <id>pre-test</id>
            <goals>
              <goal>prepare-agent</goal>
            </goals>
          </execution>
          <execution>
            <id>report</id>
            <phase>prepare-package</phase>
            <goals>
              <goal>report</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      ...
    </plugins>
  </build>
  ...
</project>

 ##############################################################################

<?xml version="1.0" encoding="UTF-8"?>
<project ...>
  ...
  <name>Child</name>
  ...
  <properties>
    ...
    <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
    
<sonar.jacoco.reportPath>${project.basedir}/../tree-component-tests/target/jacoco.exec</sonar.jacoco.reportPath>
    ...
    <jacoco.argLine />
    <surefirePlusJacoco.argLine>${surefire.argLine} 
${jacoco.argLine}</surefirePlusJacoco.argLine>
  </properties>

  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.jacoco</groupId>
          <artifactId>jacoco-maven-plugin</artifactId>
          <version>${jacoco.version}</version>
          <configuration>
            <destFile>${sonar.jacoco.reportPath}</destFile>
            <append>true</append>
            <excludes>
              <exclude>org/familysearch/functest/*.class</exclude>
            </excludes>
          </configuration>
          <executions>
            <execution>
              <goals>
                <goal>prepare-agent</goal>
              </goals>
            </execution>
            <execution>
              <id>report</id>
              <phase>prepare-package</phase>
              <goals>
                <goal>report</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
        ...
      </plugins>
    </pluginManagement>
    ...
    <plugins>
      ...
      <plugin>
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
      </plugin>
      ...
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-site-plugin</artifactId>
        <version>3.0</version>
        <configuration>
          <reportPlugins>
            ...
            <plugin>
              <groupId>org.jacoco</groupId>
              <artifactId>jacoco-maven-plugin</artifactId>
            </plugin>
            ...
          </reportPlugins>
        </configuration>
      </plugin>
      ...
    </plugins>
  </build>
  <reporting>
    <excludeDefaults>true</excludeDefaults>
    <plugins>
      <plugin>
        <!--<groupId>@project.groupId@</groupId>-->
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
        <version>@project.version@</version>
      </plugin>
      ...
    </plugins>
  </reporting>
  ...
  </profiles>
    <profile>
      <id>coverage-per-test</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.13</version>
            <configuration>
              <properties>
                <property>
                  <name>listener</name>
                  <value>org.sonar.java.jacoco.JUnitListener</value>
                </property>
              </properties>
            </configuration>
          </plugin>
        </plugins>
      </build>
      <dependencies>
        <dependency>
          <groupId>org.codehaus.sonar-plugins.java</groupId>
          <artifactId>sonar-jacoco-listeners</artifactId>
          <version>1.2</version>
          <scope>test</scope>
        </dependency>
      </dependencies>
    </profile>
    <profile>
      <id>cr-ja-re</id>
      <activation>
        <property>
          <name>component.pipeline</name>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>org.jacoco</groupId>
            <artifactId>jacoco-maven-plugin</artifactId>
            <version>0.6.4.201312101107</version>
            <configuration>
              <destFile>${project.basedir}/../target/jacoco.exec</destFile>
              <excludes>
                <exclude>**/*Test.*</exclude>
              </excludes>
            </configuration>
            <executions>
              <execution>
                <id>jacoco-intialize</id>
                <goals>
                  <goal>prepare-agent</goal>
                </goals>
              </execution>
              <execution>
                <id>report</id>
                <phase>prepare-package</phase>
                <goals>
                  <goal>report</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    ...
  </profiles>
</project>

-- 
You received this message because you are subscribed to the Google Groups 
"JaCoCo and EclEmma Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jacoco+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to