Package org.gradle.testing.jacoco.plugins

## Class JacocoTaskExtension

- java.lang.Object
- - org.gradle.testing.jacoco.plugins.JacocoTaskExtension

-     public class JacocoTaskExtension
      extends java.lang.Object

  Extension for tasks that should run with a Jacoco agent to generate coverage execution data.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `JacocoTaskExtension.Output` | The types of output that the agent can use for execution data.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `JacocoTaskExtension​(Project project, org.gradle.internal.jacoco.JacocoAgentJar agent, JavaForkOptions task)` | Creates a Jacoco task extension.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.lang.String` | `getAddress​()` | IP address or hostname to use with `JacocoTaskExtension.Output.TCP_SERVER` or `JacocoTaskExtension.Output.TCP_CLIENT`.
    `FileCollection` | `getAgentClasspath​()` | The Jacoco agent classpath.
    `java.lang.String` | `getAsJvmArg​()` | Gets all properties in the format expected of the agent JVM argument.
    `java.io.File` | `getClassDumpDir​()` | Path to dump all class files the agent sees are dumped to.
    `java.io.File` | `getDestinationFile​()` | The path for the execution data to be written to.
    `java.util.List<java.lang.String>` | `getExcludeClassLoaders​()` | List of classloader names that should be excluded from analysis.
    `java.util.List<java.lang.String>` | `getExcludes​()` | List of class names that should be excluded from analysis.
    `java.util.List<java.lang.String>` | `getIncludes​()` | List of class names that should be included in analysis.
    `JacocoTaskExtension.Output` | `getOutput​()` | The type of output to generate.
    `int` | `getPort​()` | Port to bind to for `JacocoTaskExtension.Output.TCP_SERVER` or `JacocoTaskExtension.Output.TCP_CLIENT`.
    `java.lang.String` | `getSessionId​()` | An identifier for the session written to the execution data.
    `boolean` | `isAppend​()` | Deprecated. The Jacoco plugin now deletes the old coverage file before task execution, so the data will never be appended to an existing coverage file from another task. Use `JacocoMerge` to merge different execution files or use `JacocoReportBase.setExecutionData(FileCollection)` to generate a report from multiple execution files at once. Append is set to true for the agent since this allows multiple JVMs spawned by one task to write to the same `destinationFile`.
    `boolean` | `isDumpOnExit​()` | Whether or not to dump the coverage data at VM shutdown.
    `boolean` | `isEnabled​()` | Whether or not the task should generate execution data.
    `boolean` | `isIncludeNoLocationClasses​()` | Whether or not classes without source location should be instrumented.
    `boolean` | `isJmx​()` | Whether or not to expose functionality via JMX under `org.jacoco:type=Runtime`.
    `void` | `setAddress​(java.lang.String address)` |
    `void` | `setAppend​(boolean append)` | Deprecated.
    `void` | `setClassDumpDir​(java.io.File classDumpDir)` | Sets path to dump all class files the agent sees are dumped to.
    `void` | `setDestinationFile​(java.io.File destinationFile)` |
    `void` | `setDestinationFile​(Provider<java.io.File> destinationFile)` | Set the provider for calculating the destination file.
    `void` | `setDumpOnExit​(boolean dumpOnExit)` |
    `void` | `setEnabled​(boolean enabled)` |
    `void` | `setExcludeClassLoaders​(java.util.List<java.lang.String> excludeClassLoaders)` |
    `void` | `setExcludes​(java.util.List<java.lang.String> excludes)` |
    `void` | `setIncludeNoLocationClasses​(boolean includeNoLocationClasses)` |
    `void` | `setIncludes​(java.util.List<java.lang.String> includes)` |
    `void` | `setJmx​(boolean jmx)` |
    `void` | `setOutput​(JacocoTaskExtension.Output output)` |
    `void` | `setPort​(int port)` |
    `void` | `setSessionId​(java.lang.String sessionId)` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### JacocoTaskExtension

          public JacocoTaskExtension​(Project project,
                                     org.gradle.internal.jacoco.JacocoAgentJar agent,
                                     JavaForkOptions task)

      Creates a Jacoco task extension.
      Parameters:
        `project` - the project
        `agent` - the agent JAR to use for analysis
        `task` - the task we extend

  - ### Method Detail

    - #### isEnabled

          @Input
          public boolean isEnabled​()

      Whether or not the task should generate execution data. Defaults to `true`.

    - #### setEnabled

          public void setEnabled​(boolean enabled)

    - #### getDestinationFile

          @Nullable
          @Optional
          @OutputFile
          public java.io.File getDestinationFile​()

      The path for the execution data to be written to.

    - #### setDestinationFile

          @Incubating
          public void setDestinationFile​(Provider<java.io.File> destinationFile)

      Set the provider for calculating the destination file.
      Parameters:
        `destinationFile` - Destination file provider
      Since:
        4.0

    - #### setDestinationFile

          public void setDestinationFile​(java.io.File destinationFile)

    - #### isAppend

          @Deprecated
          @Input
          public boolean isAppend​()

      Deprecated. The Jacoco plugin now deletes the old coverage file before task execution, so the data will never be appended to an existing coverage file from another task. Use `JacocoMerge` to merge different execution files or use `JacocoReportBase.setExecutionData(FileCollection)` to generate a report from multiple execution files at once. Append is set to true for the agent since this allows multiple JVMs spawned by one task to write to the same `destinationFile`.
      Whether or not data should be appended if the `destinationFile` already exists. Defaults to `true`.

    - #### setAppend

          @Deprecated
          public void setAppend​(boolean append)

      Deprecated.

    - #### getIncludes

          @Nullable
          @Optional
          @Input
          public java.util.List<java.lang.String> getIncludes​()

      List of class names that should be included in analysis. Names can use wildcards (* and ?). If left empty, all classes will be included. Defaults to an empty list.

    - #### setIncludes

          public void setIncludes​(@Nullable
                                  java.util.List<java.lang.String> includes)

    - #### getExcludes

          @Nullable
          @Optional
          @Input
          public java.util.List<java.lang.String> getExcludes​()

      List of class names that should be excluded from analysis. Names can use wildcard (* and ?). Defaults to an empty list.

    - #### setExcludes

          public void setExcludes​(@Nullable
                                  java.util.List<java.lang.String> excludes)

    - #### getExcludeClassLoaders

          @Nullable
          @Optional
          @Input
          public java.util.List<java.lang.String> getExcludeClassLoaders​()

      List of classloader names that should be excluded from analysis. Names can use wildcards (* and ?). Defaults to an empty list.

    - #### setExcludeClassLoaders

          public void setExcludeClassLoaders​(@Nullable
                                             java.util.List<java.lang.String> excludeClassLoaders)

    - #### isIncludeNoLocationClasses

          @Input
          public boolean isIncludeNoLocationClasses​()

      Whether or not classes without source location should be instrumented. Defaults to `false`. This property is only taken into account if the used JaCoCo version supports this option (JaCoCo version >= 0.7.6)

    - #### setIncludeNoLocationClasses

          public void setIncludeNoLocationClasses​(boolean includeNoLocationClasses)

    - #### getSessionId

          @Nullable
          @Optional
          @Input
          public java.lang.String getSessionId​()

      An identifier for the session written to the execution data. Defaults to an auto-generated identifier.

    - #### setSessionId

          public void setSessionId​(@Nullable
                                   java.lang.String sessionId)

    - #### isDumpOnExit

          @Input
          public boolean isDumpOnExit​()

      Whether or not to dump the coverage data at VM shutdown. Defaults to `true`.

    - #### setDumpOnExit

          public void setDumpOnExit​(boolean dumpOnExit)

    - #### getOutput

          @Input
          public JacocoTaskExtension.Output getOutput​()

      The type of output to generate. Defaults to `JacocoTaskExtension.Output.FILE`.

    - #### setOutput

          public void setOutput​(JacocoTaskExtension.Output output)

    - #### getAddress

          @Nullable
          @Optional
          @Input
          public java.lang.String getAddress​()

      IP address or hostname to use with `JacocoTaskExtension.Output.TCP_SERVER` or `JacocoTaskExtension.Output.TCP_CLIENT`. Defaults to localhost.

    - #### setAddress

          public void setAddress​(@Nullable
                                 java.lang.String address)

    - #### getPort

          @Input
          public int getPort​()

      Port to bind to for `JacocoTaskExtension.Output.TCP_SERVER` or `JacocoTaskExtension.Output.TCP_CLIENT`. Defaults to 6300.

    - #### setPort

          public void setPort​(int port)

    - #### getClassDumpDir

          @Nullable
          @Optional
          @LocalState
          public java.io.File getClassDumpDir​()

      Path to dump all class files the agent sees are dumped to. Defaults to no dumps.
      Since:
        3.4

    - #### setClassDumpDir

          public void setClassDumpDir​(@Nullable
                                      java.io.File classDumpDir)

      Sets path to dump all class files the agent sees are dumped to. Defaults to no dumps.
      Since:
        3.4

    - #### isJmx

          @Input
          public boolean isJmx​()

      Whether or not to expose functionality via JMX under `org.jacoco:type=Runtime`. Defaults to `false`. The configuration of the jmx property is only taken into account if the used JaCoCo version supports this option (JaCoCo version >= 0.6.2)

    - #### setJmx

          public void setJmx​(boolean jmx)

    - #### getAgentClasspath

          @Incubating
          @Classpath
          public FileCollection getAgentClasspath​()

      The Jacoco agent classpath. This contains only one file - the agent jar.
      Since:
        4.6

    - #### getAsJvmArg

          @Internal
          public java.lang.String getAsJvmArg​()

      Gets all properties in the format expected of the agent JVM argument.
      Returns:
        state of extension in a JVM argument