CodeNarc

API Documentation:CodeNarc

Runs CodeNarc against some source files.

Properties

PropertyDescription
codenarcClasspath

The class path containing the CodeNarc library to be used.

compilationClasspath

The class path to be used by CodeNarc when compiling classes during analysis.

config

The CodeNarc configuration to use. Replaces the configFile property.

configFile

The CodeNarc configuration file to use.

excludes

The set of exclude patterns.

ignoreFailures
Incubating

Specifies whether the build should break when the verifications performed by this task fail.

includes

The set of include patterns.

javaLauncher
Incubating

Java launcher used to start the worker process

maxHeapSize
Incubating

The maximum heap size for the worker process. If unspecified, a maximum heap size will be provided by Gradle. Supports units like the command-line option -Xmx such as "1g".

maxPriority1Violations

The maximum number of priority 1 violations allowed before failing the build.

maxPriority2Violations

The maximum number of priority 2 violations allowed before failing the build.

maxPriority3Violations

The maximum number of priority 3 violations allowed before failing the build.

minHeapSize
Incubating

The minimum heap size for the worker process. When unspecified, no minimum heap size is set. Supports units like the command-line option -Xms such as "1g".

reports

The reports to be generated by this task.

source

The source for this task, after the include and exclude patterns have been applied. Ignores source files which do not exist.

Methods

MethodDescription
exclude(excludeSpec)

Adds an exclude spec. This method may be called multiple times to append new specs.The given closure is passed a FileTreeElement as its parameter. The closure should return true or false. Example:

exclude(excludes)

Adds an ANT style exclude pattern. This method may be called multiple times to append new patterns and multiple patterns may be specified in a single call. If excludes are not provided, then no files will be excluded. If excludes are provided, then files must not match any exclude pattern to be processed.

exclude(excludes)

Adds an ANT style exclude pattern. This method may be called multiple times to append new patterns and multiple patterns may be specified in a single call. If excludes are not provided, then no files will be excluded. If excludes are provided, then files must not match any exclude pattern to be processed.

exclude(excludeSpec)

Adds an exclude spec. This method may be called multiple times to append new specs. If excludes are not provided, then no files will be excluded. If excludes are provided, then files must not match any exclude pattern to be processed.

include(includeSpec)

Adds an include spec. This method may be called multiple times to append new specs. The given closure is passed a FileTreeElement as its parameter. If includes are not provided, then all files in this container will be included. If includes are provided, then a file must match at least one of the include patterns or specs to be included.

include(includes)

Adds an ANT style include pattern. This method may be called multiple times to append new patterns and multiple patterns may be specified in a single call. If includes are not provided, then all files in this container will be included. If includes are provided, then a file must match at least one of the include patterns to be processed.

include(includes)

Adds an ANT style include pattern. This method may be called multiple times to append new patterns and multiple patterns may be specified in a single call. If includes are not provided, then all files in this container will be included. If includes are provided, then a file must match at least one of the include patterns to be processed.

include(includeSpec)

Adds an include spec. This method may be called multiple times to append new specs. If includes are not provided, then all files in this container will be included. If includes are provided, then a file must match at least one of the include patterns or specs to be included.

reports(configureAction)

Configures the reports to be generated by this task.

source(sources)

Adds some source to this task. The given source objects will be evaluated as per Project.files(java.lang.Object[]).

Script blocks

BlockDescription
reports

Configures the reports to be generated by this task.

Property details

FileCollection codenarcClasspath

The class path containing the CodeNarc library to be used.

Default with codenarc plugin:
project.configurations.codenarc

FileCollection compilationClasspath

The class path to be used by CodeNarc when compiling classes during analysis.

Default with codenarc plugin:
empty file collection

The CodeNarc configuration to use. Replaces the configFile property.

Default with codenarc plugin:
project.codenarc.config

File configFile

The CodeNarc configuration file to use.

Default with codenarc plugin:
project.codenarc.configFile

Set<String> excludes

The set of exclude patterns.

boolean ignoreFailures

Note: This property is incubating and may change in a future version of Gradle.

Specifies whether the build should break when the verifications performed by this task fail.

Set<String> includes

The set of include patterns.

Property<JavaLauncher> javaLauncher

Note: This property is incubating and may change in a future version of Gradle.

Java launcher used to start the worker process

Property<String> maxHeapSize

Note: This property is incubating and may change in a future version of Gradle.

The maximum heap size for the worker process. If unspecified, a maximum heap size will be provided by Gradle. Supports units like the command-line option -Xmx such as "1g".

int maxPriority1Violations

The maximum number of priority 1 violations allowed before failing the build.

Default with codenarc plugin:
0

int maxPriority2Violations

The maximum number of priority 2 violations allowed before failing the build.

Default with codenarc plugin:
0

int maxPriority3Violations

The maximum number of priority 3 violations allowed before failing the build.

Default with codenarc plugin:
0

Property<String> minHeapSize

Note: This property is incubating and may change in a future version of Gradle.

The minimum heap size for the worker process. When unspecified, no minimum heap size is set. Supports units like the command-line option -Xms such as "1g".

CodeNarcReports reports (read-only)

The reports to be generated by this task.

FileTree source (read-only)

The source for this task, after the include and exclude patterns have been applied. Ignores source files which do not exist.

The PathSensitivity for the sources is configured to be PathSensitivity.ABSOLUTE. If your sources are less strict, please change it accordingly by overriding this method in your subclass.

Default with codenarc plugin:
sourceSet.allGroovy

Method details

SourceTask exclude(Closure excludeSpec)

Adds an exclude spec. This method may be called multiple times to append new specs.The given closure is passed a FileTreeElement as its parameter. The closure should return true or false. Example:

copySpec {
  from 'source'
  into 'destination'
  //an example of excluding files from certain configuration:
  exclude { it.file in configurations.someConf.files }
}

If excludes are not provided, then no files will be excluded. If excludes are provided, then files must not match any exclude pattern to be processed.

SourceTask exclude(Iterable<String> excludes)

Adds an ANT style exclude pattern. This method may be called multiple times to append new patterns and multiple patterns may be specified in a single call. If excludes are not provided, then no files will be excluded. If excludes are provided, then files must not match any exclude pattern to be processed.

SourceTask exclude(String... excludes)

Adds an ANT style exclude pattern. This method may be called multiple times to append new patterns and multiple patterns may be specified in a single call. If excludes are not provided, then no files will be excluded. If excludes are provided, then files must not match any exclude pattern to be processed.

SourceTask exclude(Spec<FileTreeElement> excludeSpec)

Adds an exclude spec. This method may be called multiple times to append new specs. If excludes are not provided, then no files will be excluded. If excludes are provided, then files must not match any exclude pattern to be processed.

SourceTask include(Closure includeSpec)

Adds an include spec. This method may be called multiple times to append new specs. The given closure is passed a FileTreeElement as its parameter. If includes are not provided, then all files in this container will be included. If includes are provided, then a file must match at least one of the include patterns or specs to be included.

SourceTask include(Iterable<String> includes)

Adds an ANT style include pattern. This method may be called multiple times to append new patterns and multiple patterns may be specified in a single call. If includes are not provided, then all files in this container will be included. If includes are provided, then a file must match at least one of the include patterns to be processed.

SourceTask include(String... includes)

Adds an ANT style include pattern. This method may be called multiple times to append new patterns and multiple patterns may be specified in a single call. If includes are not provided, then all files in this container will be included. If includes are provided, then a file must match at least one of the include patterns to be processed.

SourceTask include(Spec<FileTreeElement> includeSpec)

Adds an include spec. This method may be called multiple times to append new specs. If includes are not provided, then all files in this container will be included. If includes are provided, then a file must match at least one of the include patterns or specs to be included.

CodeNarcReports reports(Action<? super CodeNarcReports> configureAction)

Configures the reports to be generated by this task.

SourceTask source(Object... sources)

Adds some source to this task. The given source objects will be evaluated as per Project.files(java.lang.Object[]).

Script block details

reports { }

Configures the reports to be generated by this task.

Delegates to:
CodeNarcReports from reports