clover:clover

Note:This goal should be used as a Maven report.

Full name:

org.openclover:clover-maven-plugin:4.2.0:clover

Description:

Generate a Clover report from existing Clover databases. The generated report is an external report generated by Clover itself. If the project generating the report is a top level project and if the aggregate configuration element is set to true then an aggregated report will also be created.

Note: This report mojo should be an @aggregator and the clover:aggregate mojo shouldn't exist. This is a limitation of the site plugin which doesn't support @aggregator reports...

Attributes:

  • Requires a Maven project to be executed.

Required Parameters

Name Type Since Description
cloverMergeDatabase String - The location of the merged clover database to create when running a report in a multimodule build.
Default value is: ${project.build.directory}/clover/cloverMerge.db.
User property is: maven.clover.cloverMergeDatabase.
historyDir String -

The location where historical Clover data will be saved.

Note: It's recommended to modify the location of this directory so that it points to a more permanent location as the ${project.build.directory} directory is erased when the project is cleaned.


Default value is: ${project.build.directory}/clover/history.
User property is: maven.clover.historyDir.
outputDirectory File - The directory where the Clover report will be generated.
Default value is: ${project.reporting.outputDirectory}/clover.
User property is: maven.clover.outputDirectory.

Optional Parameters

Name Type Since Description
alwaysReport boolean - If set to true, a report will be generated even in the absence of coverage data.
Default value is: true.
User property is: maven.clover.alwaysReport.
charset String - The charset to use in the html reports.
Default value is: UTF-8.
User property is: maven.clover.charset.
cloverDatabase String - The location of the Clover database.
User property is: maven.clover.cloverDatabase.
contextFilters String - Comma or space separated list of Clover somesrcexcluded (block, statement or method filers) to exclude when generating coverage reports.
User property is: maven.clover.contextFilters.
flushInterval int - When the Clover Flush Policy is set to "interval" or threaded this value is the minimum period between flush operations (in milliseconds).
Default value is: 500.
User property is: maven.clover.flushInterval.
generateHistorical boolean - Decide whether to generate a Clover historical report or not.
Default value is: false.
User property is: maven.clover.generateHistorical.
generateHtml boolean - Decide whether to generate an HTML report or not.
Default value is: true.
User property is: maven.clover.generateHtml.
generateJson boolean - Decide whether to generate a JSON report or not.
Default value is: false.
User property is: maven.clover.generateJson.
generatePdf boolean - Decide whether to generate a PDF report or not.
Default value is: false.
User property is: maven.clover.generatePdf.
generateXml boolean - Decide whether to generate a XML report or not.
Default value is: true.
User property is: maven.clover.generateXml.
license String - (no description)
User property is: maven.clover.license.
licenseLocation String - (no description)
User property is: maven.clover.licenseLocation.
localRepository ArtifactRepository - The local repository.
User property is: localRepository.
orderBy String - How to order coverage tables.
Default value is: PcCoveredAsc.
User property is: maven.clover.orderBy.
reportDescriptor File - Use a custom report descriptor for generating your Clover Reports. The format for the configuration file is identical to an Ant build file which uses the <clover-report/> task. For a complete reference, please consult the: Creating custom reports and clover-report documentation
User property is: maven.clover.reportDescriptor.
reportStyle String - Deprecated. this parameter will be removed in next major release
Default value is: ADG.
User property is: maven.clover.reportStyle.
repositories List - Remote repositories used for the project.
User property is: project.remoteArtifactRepositories.
resolveReportDescriptor boolean - If set to true, the clover-report configuration file will be resolved as a versioned artifact by looking for it in your configured maven repositories - both remote and local.
Default value is: false.
User property is: maven.clover.resolveReportDescriptor.
showInnerFunctions boolean - Whether to show inner functions, i.e. functions declared inside methods in the report. This applies to Java8 lambda functions for instance. If set to false then they are hidden on the list of methods, but code metrics still include them. Note: if you will use showLambdaFunctions=true and showInnerFunctions=false then only lambda functions declared as a class field will be listed.
Default value is: false.
User property is: maven.clover.showInnerFunctions.
showLambdaFunctions boolean - Whether to show lambda functions in the report. Lambda functions can be either declared inside method body or as a class field. If set to false then they are hidden on the list of methods, but code metrics still include them. Note: if you will use showLambdaFunctions=true and showInnerFunctions=false then only lambda functions declared as a class field will be listed.
Default value is: false.
User property is: maven.clover.showLambdaFunctions.
singleCloverDatabase boolean - If true, then a single database will be saved for the entire project, in the target directory of the execution root. If a custom location for the cloverDatabase is specified, this flag is ignored.
Default value is: false.
User property is: maven.clover.singleCloverDatabase.
span String - A span specifies the age of the coverage data that should be used when creating a report.
User property is: maven.clover.span.
title String - Title of the report
Default value is: ${project.name} ${project.version}.
User property is: maven.clover.title.
titleAnchor String - Title anchor of the report
Default value is: ${project.url}.
User property is: maven.clover.titleAnchor.
waitForFlush boolean - If true we'll wait 2*flushInterval to ensure coverage data is flushed to the Clover database before running any query on it.

Note: The only use case where you would want to turn this off is if you're running your tests in a separate JVM. In that case the coverage data will be flushed by default upon the JVM shutdown and there would be no need to wait for the data to be flushed. As we can't control whether users want to fork their tests or not, we're offering this parameter to them.


Default value is: true.
User property is: maven.clover.waitForFlush.

Parameter Details

alwaysReport:

If set to true, a report will be generated even in the absence of coverage data.
  • Type: boolean
  • Required: No
  • User Property: maven.clover.alwaysReport
  • Default: true

charset:

The charset to use in the html reports.
  • Type: java.lang.String
  • Required: No
  • User Property: maven.clover.charset
  • Default: UTF-8

cloverDatabase:

The location of the Clover database.
  • Type: java.lang.String
  • Required: No
  • User Property: maven.clover.cloverDatabase

cloverMergeDatabase:

The location of the merged clover database to create when running a report in a multimodule build.
  • Type: java.lang.String
  • Required: Yes
  • User Property: maven.clover.cloverMergeDatabase
  • Default: ${project.build.directory}/clover/cloverMerge.db

contextFilters:

Comma or space separated list of Clover somesrcexcluded (block, statement or method filers) to exclude when generating coverage reports.
  • Type: java.lang.String
  • Required: No
  • User Property: maven.clover.contextFilters

flushInterval:

When the Clover Flush Policy is set to "interval" or threaded this value is the minimum period between flush operations (in milliseconds).
  • Type: int
  • Required: No
  • User Property: maven.clover.flushInterval
  • Default: 500

generateHistorical:

Decide whether to generate a Clover historical report or not.
  • Type: boolean
  • Required: No
  • User Property: maven.clover.generateHistorical
  • Default: false

generateHtml:

Decide whether to generate an HTML report or not.
  • Type: boolean
  • Required: No
  • User Property: maven.clover.generateHtml
  • Default: true

generateJson:

Decide whether to generate a JSON report or not.
  • Type: boolean
  • Required: No
  • User Property: maven.clover.generateJson
  • Default: false

generatePdf:

Decide whether to generate a PDF report or not.
  • Type: boolean
  • Required: No
  • User Property: maven.clover.generatePdf
  • Default: false

generateXml:

Decide whether to generate a XML report or not.
  • Type: boolean
  • Required: No
  • User Property: maven.clover.generateXml
  • Default: true

historyDir:

The location where historical Clover data will be saved.

Note: It's recommended to modify the location of this directory so that it points to a more permanent location as the ${project.build.directory} directory is erased when the project is cleaned.

  • Type: java.lang.String
  • Required: Yes
  • User Property: maven.clover.historyDir
  • Default: ${project.build.directory}/clover/history

license:

(no description)
  • Type: java.lang.String
  • Required: No
  • User Property: maven.clover.license

licenseLocation:

(no description)
  • Type: java.lang.String
  • Required: No
  • User Property: maven.clover.licenseLocation

localRepository:

The local repository.
  • Type: org.apache.maven.artifact.repository.ArtifactRepository
  • Required: No
  • User Property: localRepository

orderBy:

How to order coverage tables.
  • Type: java.lang.String
  • Required: No
  • User Property: maven.clover.orderBy
  • Default: PcCoveredAsc

outputDirectory:

The directory where the Clover report will be generated.
  • Type: java.io.File
  • Required: Yes
  • User Property: maven.clover.outputDirectory
  • Default: ${project.reporting.outputDirectory}/clover

reportDescriptor:

Use a custom report descriptor for generating your Clover Reports. The format for the configuration file is identical to an Ant build file which uses the <clover-report/> task. For a complete reference, please consult the: Creating custom reports and clover-report documentation
  • Type: java.io.File
  • Required: No
  • User Property: maven.clover.reportDescriptor

reportStyle:

Deprecated. this parameter will be removed in next major release
Style of the HTML report: ADG (default) or CLASSIC (deprecated).
  • Type: java.lang.String
  • Required: No
  • User Property: maven.clover.reportStyle
  • Default: ADG

repositories:

Remote repositories used for the project.
  • Type: java.util.List
  • Required: No
  • User Property: project.remoteArtifactRepositories

resolveReportDescriptor:

If set to true, the clover-report configuration file will be resolved as a versioned artifact by looking for it in your configured maven repositories - both remote and local.
  • Type: boolean
  • Required: No
  • User Property: maven.clover.resolveReportDescriptor
  • Default: false

showInnerFunctions:

Whether to show inner functions, i.e. functions declared inside methods in the report. This applies to Java8 lambda functions for instance. If set to false then they are hidden on the list of methods, but code metrics still include them. Note: if you will use showLambdaFunctions=true and showInnerFunctions=false then only lambda functions declared as a class field will be listed.
  • Type: boolean
  • Required: No
  • User Property: maven.clover.showInnerFunctions
  • Default: false

showLambdaFunctions:

Whether to show lambda functions in the report. Lambda functions can be either declared inside method body or as a class field. If set to false then they are hidden on the list of methods, but code metrics still include them. Note: if you will use showLambdaFunctions=true and showInnerFunctions=false then only lambda functions declared as a class field will be listed.
  • Type: boolean
  • Required: No
  • User Property: maven.clover.showLambdaFunctions
  • Default: false

singleCloverDatabase:

If true, then a single database will be saved for the entire project, in the target directory of the execution root. If a custom location for the cloverDatabase is specified, this flag is ignored.
  • Type: boolean
  • Required: No
  • User Property: maven.clover.singleCloverDatabase
  • Default: false

span:

A span specifies the age of the coverage data that should be used when creating a report.
  • Type: java.lang.String
  • Required: No
  • User Property: maven.clover.span

title:

Title of the report
  • Type: java.lang.String
  • Required: No
  • User Property: maven.clover.title
  • Default: ${project.name} ${project.version}

titleAnchor:

Title anchor of the report
  • Type: java.lang.String
  • Required: No
  • User Property: maven.clover.titleAnchor
  • Default: ${project.url}

waitForFlush:

If true we'll wait 2*flushInterval to ensure coverage data is flushed to the Clover database before running any query on it.

Note: The only use case where you would want to turn this off is if you're running your tests in a separate JVM. In that case the coverage data will be flushed by default upon the JVM shutdown and there would be no need to wait for the data to be flushed. As we can't control whether users want to fork their tests or not, we're offering this parameter to them.

  • Type: boolean
  • Required: No
  • User Property: maven.clover.waitForFlush
  • Default: true