apache-rat:check

Full name:

org.apache.rat:apache-rat-plugin:0.15:check

Description:

Run Rat to perform a violation check.

Attributes:

  • Requires a Maven project to be executed.
  • The goal is thread-safe and supports parallel builds.
  • Binds by default to the lifecycle phase: validate.

Required Parameters

Name Type Since Description
<basedir> File - The base directory, in which to search for files.
Default value is: ${basedir}.
User property is: rat.basedir.

Optional Parameters

Name Type Since Description
<addDefaultLicenseMatchers> boolean - Whether to add the default list of license matchers.
Default value is: true.
User property is: rat.addDefaultLicenseMatchers.
<addLicenseHeaders> String - Whether to add license headers; possible values are forced, true, and false (default).
Default value is: false.
User property is: rat.addLicenseHeaders.
<consoleOutput> boolean 0.12 Whether to output the names of files that have unapproved licenses to the console. Defaults to true to ease builds in containers where you are unable to access rat.txt easily.
Default value is: true.
User property is: rat.consoleOutput.
<copyrightMessage> String - Copyright message to add to license headers. This option is ignored, unless addLicenseHeaders is set to true, or forced.
User property is: rat.copyrightMessage.
<excludeSubProjects> boolean - Whether to exclude subprojects. This is recommended, if you want a separate apache-rat-plugin report for each subproject.
Default value is: true.
User property is: rat.excludeSubprojects.
<excludes> String[] - Specifies files, which are excluded in the report. By default, no files are excluded.
<excludesFile> String - Specifies a file, from which to read excludes. Basically, an alternative to specifying the excludes as a list. The excludesFile is assumed to be using the UFT8 character set.
User property is: rat.excludesFile.
<excludesFileCharset> String - Specifies the include files character set. Defaults to @code{${project.build.sourceEncoding}), or @code{UTF8}.
Default value is: ${project.build.sourceEncoding}.
User property is: rat.excludesFileCharset.
<ignoreErrors> boolean 0.9 Will ignore rat errors and display a log message if any. Its use is NOT RECOMMENDED, but quite convenient on occasion.
Default value is: false.
User property is: rat.ignoreErrors.
<includes> String[] - Specifies files, which are included in the report. By default, all files are included.
<includesFile> String - Specifies a file, from which to read includes. Basically, an alternative to specifying the includes as a list.
User property is: rat.includesFile.
<includesFileCharset> String - Specifies the include files character set. Defaults to @code{${project.build.sourceEncoding}), or @code{UTF8}.
Default value is: ${project.build.sourceEncoding}.
User property is: rat.includesFileCharset.
<licenseFamilies> ILicenseFamily[] 0.8 Specifies the license families to accept.
<licenseMatchers> HeaderMatcherSpecification[] - Deprecated. Use licenses instead.
<licenses> IHeaderMatcher[] 0.8 Specifies the licenses to accept. By default, these are added to the default licenses, unless you set addDefaultLicenseMatchers to false.
<numUnapprovedLicenses> int - Maximum number of files with unapproved licenses.
Default value is: 0.
User property is: rat.numUnapprovedLicenses.
<parseSCMIgnoresAsExcludes> boolean - Whether to parse source code management system (SCM) ignore files and use their contents as excludes. At the moment this works for the following SCMs:
Default value is: true.
User property is: rat.parseSCMIgnoresAsExcludes.
<reportFile> File - Where to store the report.
Default value is: ${project.build.directory}/rat.txt.
User property is: rat.outputFile.
<reportStyle> String - Output style of the report. Use "plain" (the default) for a plain text report or "xml" for the raw XML report. Alternatively you can give the path of an XSL transformation that will be applied on the raw XML to produce the report written to the output file.
Default value is: plain.
User property is: rat.outputStyle.
<skip> boolean 0.11 Will skip the plugin execution, e.g. for technical builds that do not take license compliance into account.
Default value is: false.
User property is: rat.skip.
<useDefaultExcludes> boolean - Whether to use the default excludes when scanning for files. The default excludes are:
Default value is: true.
User property is: rat.useDefaultExcludes.
<useEclipseDefaultExcludes> boolean - Whether to use the Eclipse specific default excludes when scanning for files. Eclipse specific default excludes are given by the constant ECLIPSE_DEFAULT_EXCLUDES: The .classpath and .project files, the .settings directory, and so on.
Default value is: true.
User property is: rat.useEclipseDefaultExcludes.
<useIdeaDefaultExcludes> boolean - Whether to use the IDEA specific default excludes when scanning for files. IDEA specific default excludes are given by the constant IDEA_DEFAULT_EXCLUDES: The *.iml, *.ipr and *.iws files and the .idea directory.
Default value is: true.
User property is: rat.useIdeaDefaultExcludes.
<useMavenDefaultExcludes> boolean - Whether to use the Maven specific default excludes when scanning for files. Maven specific default excludes are given by the constant MAVEN_DEFAULT_EXCLUDES: The target directory, the cobertura.ser file, and so on.
Default value is: true.
User property is: rat.useMavenDefaultExcludes.

Parameter Details

<addDefaultLicenseMatchers>

Whether to add the default list of license matchers.
  • Type: boolean
  • Required: No
  • User Property: rat.addDefaultLicenseMatchers
  • Default: true

<addLicenseHeaders>

Whether to add license headers; possible values are forced, true, and false (default).
  • Type: java.lang.String
  • Required: No
  • User Property: rat.addLicenseHeaders
  • Default: false

<basedir>

The base directory, in which to search for files.
  • Type: java.io.File
  • Required: Yes
  • User Property: rat.basedir
  • Default: ${basedir}

<consoleOutput>

Whether to output the names of files that have unapproved licenses to the console. Defaults to true to ease builds in containers where you are unable to access rat.txt easily.
  • Type: boolean
  • Since: 0.12
  • Required: No
  • User Property: rat.consoleOutput
  • Default: true

<copyrightMessage>

Copyright message to add to license headers. This option is ignored, unless addLicenseHeaders is set to true, or forced.
  • Type: java.lang.String
  • Required: No
  • User Property: rat.copyrightMessage

<excludeSubProjects>

Whether to exclude subprojects. This is recommended, if you want a separate apache-rat-plugin report for each subproject.
  • Type: boolean
  • Required: No
  • User Property: rat.excludeSubprojects
  • Default: true

<excludes>

Specifies files, which are excluded in the report. By default, no files are excluded.
  • Type: java.lang.String[]
  • Required: No

<excludesFile>

Specifies a file, from which to read excludes. Basically, an alternative to specifying the excludes as a list. The excludesFile is assumed to be using the UFT8 character set.
  • Type: java.lang.String
  • Required: No
  • User Property: rat.excludesFile

<excludesFileCharset>

Specifies the include files character set. Defaults to @code{${project.build.sourceEncoding}), or @code{UTF8}.
  • Type: java.lang.String
  • Required: No
  • User Property: rat.excludesFileCharset
  • Default: ${project.build.sourceEncoding}

<ignoreErrors>

Will ignore rat errors and display a log message if any. Its use is NOT RECOMMENDED, but quite convenient on occasion.
  • Type: boolean
  • Since: 0.9
  • Required: No
  • User Property: rat.ignoreErrors
  • Default: false

<includes>

Specifies files, which are included in the report. By default, all files are included.
  • Type: java.lang.String[]
  • Required: No

<includesFile>

Specifies a file, from which to read includes. Basically, an alternative to specifying the includes as a list.
  • Type: java.lang.String
  • Required: No
  • User Property: rat.includesFile

<includesFileCharset>

Specifies the include files character set. Defaults to @code{${project.build.sourceEncoding}), or @code{UTF8}.
  • Type: java.lang.String
  • Required: No
  • User Property: rat.includesFileCharset
  • Default: ${project.build.sourceEncoding}

<licenseFamilies>

Specifies the license families to accept.
  • Type: org.apache.rat.license.ILicenseFamily[]
  • Since: 0.8
  • Required: No

<licenseMatchers>

Deprecated. Use licenses instead.
Specifies the licenses to accept. Deprecated, use licenses instead.
  • Type: org.apache.rat.mp.HeaderMatcherSpecification[]
  • Required: No

<licenses>

Specifies the licenses to accept. By default, these are added to the default licenses, unless you set addDefaultLicenseMatchers to false.
  • Type: org.apache.rat.analysis.IHeaderMatcher[]
  • Since: 0.8
  • Required: No

<numUnapprovedLicenses>

Maximum number of files with unapproved licenses.
  • Type: int
  • Required: No
  • User Property: rat.numUnapprovedLicenses
  • Default: 0

<parseSCMIgnoresAsExcludes>

Whether to parse source code management system (SCM) ignore files and use their contents as excludes. At the moment this works for the following SCMs:
  • Type: boolean
  • Required: No
  • User Property: rat.parseSCMIgnoresAsExcludes
  • Default: true

<reportFile>

Where to store the report.
  • Type: java.io.File
  • Required: No
  • User Property: rat.outputFile
  • Default: ${project.build.directory}/rat.txt

<reportStyle>

Output style of the report. Use "plain" (the default) for a plain text report or "xml" for the raw XML report. Alternatively you can give the path of an XSL transformation that will be applied on the raw XML to produce the report written to the output file.
  • Type: java.lang.String
  • Required: No
  • User Property: rat.outputStyle
  • Default: plain

<skip>

Will skip the plugin execution, e.g. for technical builds that do not take license compliance into account.
  • Type: boolean
  • Since: 0.11
  • Required: No
  • User Property: rat.skip
  • Default: false

<useDefaultExcludes>

Whether to use the default excludes when scanning for files. The default excludes are:
  • Type: boolean
  • Required: No
  • User Property: rat.useDefaultExcludes
  • Default: true

<useEclipseDefaultExcludes>

Whether to use the Eclipse specific default excludes when scanning for files. Eclipse specific default excludes are given by the constant ECLIPSE_DEFAULT_EXCLUDES: The .classpath and .project files, the .settings directory, and so on.
  • Type: boolean
  • Required: No
  • User Property: rat.useEclipseDefaultExcludes
  • Default: true

<useIdeaDefaultExcludes>

Whether to use the IDEA specific default excludes when scanning for files. IDEA specific default excludes are given by the constant IDEA_DEFAULT_EXCLUDES: The *.iml, *.ipr and *.iws files and the .idea directory.
  • Type: boolean
  • Required: No
  • User Property: rat.useIdeaDefaultExcludes
  • Default: true

<useMavenDefaultExcludes>

Whether to use the Maven specific default excludes when scanning for files. Maven specific default excludes are given by the constant MAVEN_DEFAULT_EXCLUDES: The target directory, the cobertura.ser file, and so on.
  • Type: boolean
  • Required: No
  • User Property: rat.useMavenDefaultExcludes
  • Default: true