dependency:analyze-report

Note:

This goal should be used as a Maven report.

Full name:

org.apache.maven.plugins:maven-dependency-plugin:3.8.0:analyze-report

Description:

Analyzes the dependencies of this project and produces a report that summarizes which are: used and declared; used and undeclared; unused and declared.

Attributes:

  • Requires a Maven project to be executed.
  • Requires dependency resolution of artifacts in scope: test.
  • The goal is thread-safe and supports parallel builds.
  • Since version: 2.0-alpha-5.
  • Invokes the execution of the following lifecycle phase prior to executing itself: test-compile.

Required Parameters

Name Type Since Description
<outputDirectory> File - The shared output directory for the report. Note that this parameter is only evaluated if the goal is run directly from the command line. If the goal is run indirectly as part of a site generation, the shared output directory configured in the Maven Site Plugin is used instead.

A plugin may use any subdirectory structure (either using a hard-coded name or, ideally, an additional user-defined mojo parameter with a default value) to generate multi-page reports or external reports with the main output file (entry point) denoted by #getOutputName().


Default: ${project.build.directory}/reports

Optional Parameters

Name Type Since Description
<excludedClasses> Set<String> 3.7.0 List Excluded classes patterns from analyze. Java regular expression pattern is applied to full class name.
User Property: mdep.analyze.excludedClasses
<ignoreNonCompile> boolean 2.2 Ignore Runtime/Provided/Test/System scopes for unused dependency analysis
Default: false
User Property: ignoreNonCompile
<locale> String - The locale to use when the report generation is invoked directly as a standalone Mojo.
See also: org.apache.maven.doxia.tools.SiteTool.DEFAULT_LOCALE, org.apache.maven.doxia.tools.SiteTool.getSiteLocales(java.lang.String)
Default: default
<outputFormat> String - The report output format: null by default, to represent a site, but can be configured to a Doxia Sink id.
User Property: output.format
<outputTimestamp> String - Timestamp for reproducible output archive entries, either formatted as ISO 8601 yyyy-MM-dd'T'HH:mm:ssXXX or as an int representing seconds since the epoch (like SOURCE_DATE_EPOCH).
Default: ${project.build.outputTimestamp}
<siteDirectory> File - Directory containing the site.xml file.
Default: ${basedir}/src/site
<skip> boolean 2.7 Skip plugin execution completely.
Default: false
User Property: mdep.analyze.skip
<usedDependencies> String[] 2.6 Force dependencies as used, to override incomplete result caused by bytecode-level analysis. Dependency format is groupId:artifactId.

Parameter Details

<excludedClasses>

List Excluded classes patterns from analyze. Java regular expression pattern is applied to full class name.
  • Type: java.util.Set<java.lang.String>
  • Since: 3.7.0
  • Required: No
  • User Property: mdep.analyze.excludedClasses

<ignoreNonCompile>

Ignore Runtime/Provided/Test/System scopes for unused dependency analysis
  • Type: boolean
  • Since: 2.2
  • Required: No
  • User Property: ignoreNonCompile
  • Default: false

<locale>

The locale to use when the report generation is invoked directly as a standalone Mojo.
See also: org.apache.maven.doxia.tools.SiteTool.DEFAULT_LOCALE, org.apache.maven.doxia.tools.SiteTool.getSiteLocales(java.lang.String)
  • Type: java.lang.String
  • Required: No
  • Default: default

<outputDirectory>

The shared output directory for the report. Note that this parameter is only evaluated if the goal is run directly from the command line. If the goal is run indirectly as part of a site generation, the shared output directory configured in the Maven Site Plugin is used instead.

A plugin may use any subdirectory structure (either using a hard-coded name or, ideally, an additional user-defined mojo parameter with a default value) to generate multi-page reports or external reports with the main output file (entry point) denoted by #getOutputName().

  • Type: java.io.File
  • Required: Yes
  • Default: ${project.build.directory}/reports

<outputFormat>

The report output format: null by default, to represent a site, but can be configured to a Doxia Sink id.
  • Type: java.lang.String
  • Required: No
  • User Property: output.format

<outputTimestamp>

Timestamp for reproducible output archive entries, either formatted as ISO 8601 yyyy-MM-dd'T'HH:mm:ssXXX or as an int representing seconds since the epoch (like SOURCE_DATE_EPOCH).
  • Type: java.lang.String
  • Required: No
  • Default: ${project.build.outputTimestamp}

<siteDirectory>

Directory containing the site.xml file.
  • Type: java.io.File
  • Required: No
  • Default: ${basedir}/src/site

<skip>

Skip plugin execution completely.
  • Type: boolean
  • Since: 2.7
  • Required: No
  • User Property: mdep.analyze.skip
  • Default: false

<usedDependencies>

Force dependencies as used, to override incomplete result caused by bytecode-level analysis. Dependency format is groupId:artifactId.
  • Type: java.lang.String[]
  • Since: 2.6
  • Required: No