org.jacoco.maven
Class AgentMojo

java.lang.Object
  extended by org.apache.maven.plugin.AbstractMojo
      extended by org.jacoco.maven.AbstractJacocoMojo
          extended by org.jacoco.maven.AbstractAgentMojo
              extended by org.jacoco.maven.AgentMojo
All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo

@Mojo(name="prepare-agent",
      defaultPhase=INITIALIZE,
      requiresDependencyResolution=RUNTIME,
      threadSafe=true)
public class AgentMojo
extends AbstractAgentMojo

Prepares a property pointing to the JaCoCo runtime agent that can be passed as a VM argument to the application under test. Depending on the project packaging type by default a property with the following name is set:

If your project already defines VM arguments for test execution, be sure that they will include property defined by JaCoCo.

One of the ways to do this in case of maven-surefire-plugin - is to use syntax for late property evaluation:

   <plugin>
     <groupId>org.apache.maven.plugins</groupId>
     <artifactId>maven-surefire-plugin</artifactId>
     <configuration>
       <argLine>@{argLine} -your -extra -arguments</argLine>
     </configuration>
   </plugin>
 

You can define empty property to avoid JVM startup error Could not find or load main class @{argLine} when using late property evaluation and jacoco-maven-plugin not executed.

Another way is to define "argLine" as a Maven property rather than as part of the configuration of maven-surefire-plugin:

   <properties>
     <argLine>-your -extra -arguments</argLine>
   </properties>
   ...
   <plugin>
     <groupId>org.apache.maven.plugins</groupId>
     <artifactId>maven-surefire-plugin</artifactId>
     <configuration>
       <!-- no argLine here -->
     </configuration>
   </plugin>
 

Resulting coverage information is collected during execution and by default written to a file when the process terminates.

Since:
0.5.3

Field Summary
 
Fields inherited from interface org.apache.maven.plugin.Mojo
ROLE
 
Constructor Summary
AgentMojo()
           
 
Method Summary
 
Methods inherited from class org.jacoco.maven.AbstractAgentMojo
executeMojo, skipMojo
 
Methods inherited from class org.jacoco.maven.AbstractJacocoMojo
execute, getProject
 
Methods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AgentMojo

public AgentMojo()


Copyright © 2009–2019 Mountainminds GmbH & Co. KG. All rights reserved.