Class AbstractCheckstyleReport
- java.lang.Object
-
- org.apache.maven.plugin.AbstractMojo
-
- org.apache.maven.reporting.AbstractMavenReport
-
- org.apache.maven.plugins.checkstyle.AbstractCheckstyleReport
-
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled
,org.apache.maven.plugin.Mojo
,org.apache.maven.reporting.MavenMultiPageReport
,org.apache.maven.reporting.MavenReport
- Direct Known Subclasses:
CheckstyleAggregateReport
,CheckstyleReport
public abstract class AbstractCheckstyleReport extends org.apache.maven.reporting.AbstractMavenReport
Base abstract class for Checkstyle reports.- Version:
- $Id$
-
-
Field Summary
Fields Modifier and Type Field Description protected String
cacheFile
Specifies the cache file used to speed up Checkstyle on successive runs.protected CheckstyleExecutor
checkstyleExecutor
protected CheckstyleRssGenerator
checkstyleRssGenerator
CheckstyleRssGenerator.protected String
configLocation
Specifies the location of the XML configuration to use.protected boolean
consoleOutput
Output errors to console.protected String
encoding
The file encoding to use when reading the source files.protected String
excludes
Specifies the names filter of the source files to be excluded for Checkstyle.protected boolean
failsOnError
Specifies if the build should fail upon a violation.protected String
headerLocation
Specifies the location of the License file (a.k.a.protected boolean
includeResources
Specifies whether to include the resource directories in the check.protected String
includes
Specifies the names filter of the source files to be used for Checkstyle.protected boolean
includeTestResources
Specifies whether to include the test resource directories in the check.protected boolean
includeTestSourceDirectory
Include or not the test source directory/directories to be used for Checkstyle.protected static String
JAVA_FILES
protected org.codehaus.plexus.resource.ResourceManager
locator
static String
PLUGIN_RESOURCES
protected String
propertiesLocation
Specifies the location of the properties file.protected String
propertyExpansion
Allows for specifying raw property expansion information.protected String
resourceExcludes
Specifies the names filter of the resource files to be excluded for Checkstyle.protected String
resourceIncludes
Specifies the names filter of the resource files to be used for Checkstyle.protected List<org.apache.maven.model.Resource>
resources
Specifies the location of the resources to be used for Checkstyle.protected org.apache.maven.doxia.tools.SiteTool
siteTool
SiteTool.protected boolean
skip
Skip entire check.protected ByteArrayOutputStream
stringOutputStream
protected String
suppressionsFileExpression
The key to be used in the properties for the suppressions file.protected String
suppressionsLocation
Specifies the location of the suppressions XML file to use.protected List<org.apache.maven.model.Resource>
testResources
Specifies the location of the test resources to be used for Checkstyle.-
Fields inherited from class org.apache.maven.reporting.AbstractMavenReport
outputDirectory, project, siteRenderer
-
-
Constructor Summary
Constructors Constructor Description AbstractCheckstyleReport()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract CheckstyleExecutorRequest
createRequest()
Create the Checkstyle executor request.void
executeReport(Locale locale)
protected com.puppycrawl.tools.checkstyle.DefaultLogger
getConsoleListener()
Creates and returns the console listener.String
getDescription(Locale locale)
protected com.puppycrawl.tools.checkstyle.api.AuditListener
getListener()
Creates and returns the report generation listener.String
getName(Locale locale)
protected List<File>
getSourceDirectories()
protected List<File>
getTestSourceDirectories()
-
Methods inherited from class org.apache.maven.reporting.AbstractMavenReport
canGenerateReport, closeReport, execute, generate, generate, generate, getCategoryName, getInputEncoding, getOutputDirectory, getOutputEncoding, getProject, getReportOutputDirectory, getSink, getSinkFactory, getSiteRenderer, isExternalReport, setReportOutputDirectory
-
Methods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
-
-
-
-
Field Detail
-
PLUGIN_RESOURCES
public static final String PLUGIN_RESOURCES
- See Also:
- Constant Field Values
-
JAVA_FILES
protected static final String JAVA_FILES
- See Also:
- Constant Field Values
-
cacheFile
@Parameter(defaultValue="${project.build.directory}/checkstyle-cachefile") protected String cacheFile
Specifies the cache file used to speed up Checkstyle on successive runs.
-
configLocation
@Parameter(property="checkstyle.config.location", defaultValue="sun_checks.xml") protected String configLocation
Specifies the location of the XML configuration to use.
Potential values are a filesystem path, a URL, or a classpath resource. This parameter expects that the contents of the location conform to the xml format (Checkstyle Checker module) configuration of rulesets.
This parameter is resolved as resource, URL, then file. If successfully resolved, the contents of the configuration is copied into the
${project.build.directory}/checkstyle-configuration.xml
file before being passed to Checkstyle as a configuration.There are 2 predefined rulesets included in Maven Checkstyle Plugin:
sun_checks.xml
: Sun Checks.google_checks.xml
: Google Checks.
-
consoleOutput
@Parameter(property="checkstyle.consoleOutput", defaultValue="false") protected boolean consoleOutput
Output errors to console.
-
encoding
@Parameter(property="encoding", defaultValue="${project.build.sourceEncoding}") protected String encoding
The file encoding to use when reading the source files. If the propertyproject.build.sourceEncoding
is not set, the platform default encoding is used. Note: This parameter always overrides the propertycharset
from Checkstyle'sTreeWalker
module.- Since:
- 2.2
-
failsOnError
@Parameter(defaultValue="false") protected boolean failsOnError
Specifies if the build should fail upon a violation.
-
headerLocation
@Parameter(property="checkstyle.header.file", defaultValue="LICENSE.txt") protected String headerLocation
Specifies the location of the License file (a.k.a. the header file) that can be used by Checkstyle to verify that source code has the correct license header.
You need to use
${checkstyle.header.file}
in your Checkstyle xml configuration to reference the name of this header file.For instance:
<module name="RegexpHeader"> <property name="headerFile" value="${checkstyle.header.file}"/> </module>
- Since:
- 2.0-beta-2
-
skip
@Parameter(property="checkstyle.skip", defaultValue="false") protected boolean skip
Skip entire check.- Since:
- 2.2
-
propertiesLocation
@Parameter(property="checkstyle.properties.location") protected String propertiesLocation
Specifies the location of the properties file.
This parameter is resolved as URL, File then resource. If successfully resolved, the contents of the properties location is copied into the
${project.build.directory}/checkstyle-checker.properties
file before being passed to Checkstyle for loading.The contents of the
propertiesLocation
will be made available to Checkstyle for specifying values for parameters within the xml configuration (specified in theconfigLocation
parameter).- Since:
- 2.0-beta-2
-
propertyExpansion
@Parameter protected String propertyExpansion
Allows for specifying raw property expansion information.
-
resources
@Parameter(defaultValue="${project.resources}", readonly=true) protected List<org.apache.maven.model.Resource> resources
Specifies the location of the resources to be used for Checkstyle.- Since:
- 2.10
-
testResources
@Parameter(defaultValue="${project.testResources}", readonly=true) protected List<org.apache.maven.model.Resource> testResources
Specifies the location of the test resources to be used for Checkstyle.- Since:
- 2.11
-
includes
@Parameter(property="checkstyle.includes", defaultValue="**\\/*.java", required=true) protected String includes
Specifies the names filter of the source files to be used for Checkstyle.
-
excludes
@Parameter(property="checkstyle.excludes") protected String excludes
Specifies the names filter of the source files to be excluded for Checkstyle.
-
resourceIncludes
@Parameter(property="checkstyle.resourceIncludes", defaultValue="**/*.properties", required=true) protected String resourceIncludes
Specifies the names filter of the resource files to be used for Checkstyle.- Since:
- 2.11
-
resourceExcludes
@Parameter(property="checkstyle.resourceExcludes") protected String resourceExcludes
Specifies the names filter of the resource files to be excluded for Checkstyle.- Since:
- 2.11
-
includeResources
@Parameter(property="checkstyle.includeResources", defaultValue="true", required=true) protected boolean includeResources
Specifies whether to include the resource directories in the check.- Since:
- 2.11
-
includeTestResources
@Parameter(property="checkstyle.includeTestResources", defaultValue="true", required=true) protected boolean includeTestResources
Specifies whether to include the test resource directories in the check.- Since:
- 2.11
-
includeTestSourceDirectory
@Parameter(defaultValue="false") protected boolean includeTestSourceDirectory
Include or not the test source directory/directories to be used for Checkstyle.- Since:
- 2.2
-
suppressionsFileExpression
@Parameter(property="checkstyle.suppression.expression", defaultValue="checkstyle.suppressions.file") protected String suppressionsFileExpression
The key to be used in the properties for the suppressions file.- Since:
- 2.1
-
suppressionsLocation
@Parameter(property="checkstyle.suppressions.location") protected String suppressionsLocation
Specifies the location of the suppressions XML file to use.
This parameter is resolved as resource, URL, then file. If successfully resolved, the contents of the suppressions XML is copied into the
${project.build.directory}/checkstyle-supressions.xml
file before being passed to Checkstyle for loading.See
suppressionsFileExpression
for the property that will be made available to your Checkstyle configuration.- Since:
- 2.0-beta-2
-
siteTool
@Component(role=org.apache.maven.doxia.tools.SiteTool.class) protected org.apache.maven.doxia.tools.SiteTool siteTool
SiteTool.- Since:
- 2.2
-
locator
@Component protected org.codehaus.plexus.resource.ResourceManager locator
-
checkstyleRssGenerator
@Component(role=CheckstyleRssGenerator.class, hint="default") protected CheckstyleRssGenerator checkstyleRssGenerator
CheckstyleRssGenerator.- Since:
- 2.4
-
checkstyleExecutor
@Component(role=CheckstyleExecutor.class, hint="default") protected CheckstyleExecutor checkstyleExecutor
- Since:
- 2.5
-
stringOutputStream
protected ByteArrayOutputStream stringOutputStream
-
-
Method Detail
-
executeReport
public void executeReport(Locale locale) throws org.apache.maven.reporting.MavenReportException
- Specified by:
executeReport
in classorg.apache.maven.reporting.AbstractMavenReport
- Throws:
org.apache.maven.reporting.MavenReportException
-
createRequest
protected abstract CheckstyleExecutorRequest createRequest() throws org.apache.maven.reporting.MavenReportException
Create the Checkstyle executor request.- Returns:
- The executor request.
- Throws:
org.apache.maven.reporting.MavenReportException
- If something goes wrong during creation.
-
getListener
protected com.puppycrawl.tools.checkstyle.api.AuditListener getListener() throws org.apache.maven.reporting.MavenReportException
Creates and returns the report generation listener.- Returns:
- The audit listener.
- Throws:
org.apache.maven.reporting.MavenReportException
- If something goes wrong.
-
getConsoleListener
protected com.puppycrawl.tools.checkstyle.DefaultLogger getConsoleListener() throws org.apache.maven.reporting.MavenReportException
Creates and returns the console listener.- Returns:
- The console listener.
- Throws:
org.apache.maven.reporting.MavenReportException
- If something goes wrong.
-
-