Class FindBugs
- java.lang.Object
-
- org.gradle.api.internal.AbstractTask
-
- org.gradle.api.DefaultTask
-
- org.gradle.api.internal.ConventionTask
-
- org.gradle.api.tasks.SourceTask
-
- org.gradle.api.plugins.quality.FindBugs
-
- All Implemented Interfaces:
Comparable<Task>
,org.gradle.api.internal.DynamicObjectAware
,org.gradle.api.internal.IConventionAware
,org.gradle.api.internal.TaskInternal
,ExtensionAware
,Reporting<FindBugsReports>
,Task
,PatternFilterable
,VerificationTask
,org.gradle.util.Configurable<Task>
@CacheableTask public class FindBugs extends SourceTask implements VerificationTask, Reporting<FindBugsReports>
Analyzes code with FindBugs. See the FindBugs Manual for additional information on configuration options.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.gradle.api.Task
Task.Namer
-
-
Field Summary
-
Fields inherited from class org.gradle.api.tasks.SourceTask
source
-
Fields inherited from interface org.gradle.api.Task
TASK_ACTION, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE
-
-
Constructor Summary
Constructors Constructor Description FindBugs()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description FindBugs
extraArgs(Iterable<String> arguments)
Any additional arguments (not covered here more explicitly likeeffort
) to be passed along to FindBugs.FindBugs
extraArgs(String... arguments)
Any additional arguments (not covered here more explicitly likeeffort
) to be passed along to FindBugs.protected FileCollection
getCandidateClassFiles()
The classes to be analyzed.FileCollection
getClasses()
The class directories to be analyzed.FileCollection
getClasspath()
Compile class path for the classes to be analyzed.String
getEffort()
The analysis effort level.File
getExcludeBugsFilter()
The filename of a filter specifying baseline bugs to exclude from being reported.TextResource
getExcludeBugsFilterConfig()
A filter specifying baseline bugs to exclude from being reported.File
getExcludeFilter()
The filename of a filter specifying bugs to exclude from being reported.TextResource
getExcludeFilterConfig()
A filter specifying bugs to exclude from being reported.Collection<String>
getExtraArgs()
Any additional arguments (not covered here more explicitly likeeffort
) to be passed along to FindBugs.FileCollection
getFindbugsClasspath()
Class path holding the FindBugs library.boolean
getIgnoreFailures()
Whether to allow the build to continue if there are warnings.File
getIncludeFilter()
The filename of a filter specifying which bugs are reported.TextResource
getIncludeFilterConfig()
A filter specifying which bugs are reported.Collection<String>
getJvmArgs()
Any additional arguments to be passed along to FindBugs JVM process.String
getMaxHeapSize()
The maximum heap size for the forked findbugs process (ex: '1g').ObjectFactory
getObjectFactory()
Injects and returns an instance ofObjectFactory
.Collection<String>
getOmitVisitors()
Similar tovisitors
except that it specifies bug detectors which should not be run.FileCollection
getPluginClasspath()
Class path holding any additional FindBugs plugins.String
getReportLevel()
The priority threshold for reporting bugs.FindBugsReports
getReports()
The reports to be generated by this task.boolean
getShowProgress()
Indicates whether analysis progress should be rendered on standard output.FileTree
getSource()
Returns the source for this task, after the include and exclude patterns have been applied.Collection<String>
getVisitors()
The bug detectors which should be run.org.gradle.process.internal.worker.WorkerProcessFactory
getWorkerProcessBuilderFactory()
FindBugs
jvmArgs(Iterable<String> arguments)
Any additional arguments to be passed along to FindBugs JVM process.FindBugs
jvmArgs(String... arguments)
Any additional arguments to be passed along to FindBugs JVM process.FindBugsReports
reports(Closure closure)
Configures the reports to be generated by this task.FindBugsReports
reports(Action<? super FindBugsReports> configureAction)
Configures the reports to be generated by this task.void
run()
void
setClasses(FileCollection classes)
The class directories to be analyzed.void
setClasspath(FileCollection classpath)
Compile class path for the classes to be analyzed.void
setEffort(String effort)
The analysis effort level.void
setExcludeBugsFilter(File filter)
The filename of a filter specifying baseline bugs to exclude from being reported.void
setExcludeBugsFilterConfig(TextResource excludeBugsFilterConfig)
A filter specifying baseline bugs to exclude from being reported.void
setExcludeFilter(File filter)
The filename of a filter specifying bugs to exclude from being reported.void
setExcludeFilterConfig(TextResource excludeFilterConfig)
A filter specifying bugs to exclude from being reported.void
setExtraArgs(Collection<String> extraArgs)
Any additional arguments (not covered here more explicitly likeeffort
) to be passed along to FindBugs.void
setFindbugsClasspath(FileCollection findbugsClasspath)
Class path holding the FindBugs library.void
setIgnoreFailures(boolean ignoreFailures)
Whether to allow the build to continue if there are warnings.void
setIncludeFilter(File filter)
The filename of a filter specifying which bugs are reported.void
setIncludeFilterConfig(TextResource includeFilterConfig)
A filter specifying which bugs are reported.void
setJvmArgs(Collection<String> jvmArgs)
Any additional arguments to be passed along to FindBugs JVM process.void
setMaxHeapSize(String maxHeapSize)
The maximum heap size for the forked findbugs process (ex: '1g').void
setOmitVisitors(Collection<String> omitVisitors)
Similar tovisitors
except that it specifies bug detectors which should not be run.void
setPluginClasspath(FileCollection pluginClasspath)
Class path holding any additional FindBugs plugins.void
setReportLevel(String reportLevel)
The priority threshold for reporting bugs.void
setShowProgress(boolean showProgress)
Indicates whether analysis progress should be rendered on standard output.void
setVisitors(Collection<String> visitors)
The bug detectors which should be run.-
Methods inherited from class org.gradle.api.tasks.SourceTask
exclude, exclude, exclude, exclude, getExcludes, getIncludes, getPatternSetFactory, include, include, include, include, setExcludes, setIncludes, setSource, setSource, source
-
Methods inherited from class org.gradle.api.internal.ConventionTask
conventionMapping, conventionMapping, getConventionMapping
-
Methods inherited from class org.gradle.api.DefaultTask
newInputDirectory, newInputFile, newOutputDirectory, newOutputFile
-
Methods inherited from class org.gradle.api.internal.AbstractTask
addValidator, appendParallelSafeAction, compareTo, configure, deleteAllActions, dependsOn, dependsOnTaskDidWork, doFirst, doFirst, doFirst, doLast, doLast, doLast, execute, finalizedBy, getActions, getAnt, getAsDynamicObject, getConvention, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExecuter, getExtensions, getFinalizedBy, getGroup, getIdentityPath, getImpliesSubProjects, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOnlyIf, getOutputs, getPath, getProject, getServices, getShouldRunAfter, getStandardOutputCapture, getState, getTaskActions, getTaskDependencies, getTemporaryDir, getTemporaryDirFactory, getValidators, hasProperty, injectIntoNewInstance, isEnabled, isHasCustomActions, leftShift, mustRunAfter, onlyIf, onlyIf, prependParallelSafeAction, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setExecuter, setFinalizedBy, setGroup, setImpliesSubProjects, setMustRunAfter, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, toString
-
-
-
-
Method Detail
-
getObjectFactory
@Incubating @Inject public ObjectFactory getObjectFactory()
Injects and returns an instance ofObjectFactory
.- Since:
- 4.2
-
getWorkerProcessBuilderFactory
@Inject public org.gradle.process.internal.worker.WorkerProcessFactory getWorkerProcessBuilderFactory()
-
getReports
public FindBugsReports getReports()
The reports to be generated by this task.- Specified by:
getReports
in interfaceReporting<FindBugsReports>
- Returns:
- The reports container
-
reports
public FindBugsReports reports(Closure closure)
Configures the reports to be generated by this task. The contained reports can be configured by name and closures. Example:findbugsTask { reports { xml { destination "build/findbugs.xml" } } }
- Specified by:
reports
in interfaceReporting<FindBugsReports>
- Parameters:
closure
- The configuration- Returns:
- The reports container
-
reports
public FindBugsReports reports(Action<? super FindBugsReports> configureAction)
Configures the reports to be generated by this task. The contained reports can be configured by name and closures. Example:findbugsTask { reports { xml { destination "build/findbugs.xml" } } }
- Specified by:
reports
in interfaceReporting<FindBugsReports>
- Parameters:
configureAction
- The configuration- Returns:
- The reports container
-
getIncludeFilter
@Internal public File getIncludeFilter()
The filename of a filter specifying which bugs are reported.
-
setIncludeFilter
public void setIncludeFilter(File filter)
The filename of a filter specifying which bugs are reported.
-
getExcludeFilter
@Internal public File getExcludeFilter()
The filename of a filter specifying bugs to exclude from being reported.
-
setExcludeFilter
public void setExcludeFilter(File filter)
The filename of a filter specifying bugs to exclude from being reported.
-
getExcludeBugsFilter
@Internal public File getExcludeBugsFilter()
The filename of a filter specifying baseline bugs to exclude from being reported.
-
setExcludeBugsFilter
public void setExcludeBugsFilter(File filter)
The filename of a filter specifying baseline bugs to exclude from being reported.
-
run
public void run() throws IOException, InterruptedException
- Throws:
IOException
InterruptedException
-
extraArgs
public FindBugs extraArgs(Iterable<String> arguments)
Any additional arguments (not covered here more explicitly likeeffort
) to be passed along to FindBugs.Extra arguments are passed to FindBugs after the arguments Gradle understands (like
effort
but before the list of classes to analyze. This should only be used for arguments that cannot be provided by Gradle directly. Gradle does not try to interpret or validate the arguments before passing them to FindBugs.See the FindBugs TextUICommandLine source for available options.
- Since:
- 2.6
-
extraArgs
public FindBugs extraArgs(String... arguments)
Any additional arguments (not covered here more explicitly likeeffort
) to be passed along to FindBugs.Extra arguments are passed to FindBugs after the arguments Gradle understands (like
effort
but before the list of classes to analyze. This should only be used for arguments that cannot be provided by Gradle directly. Gradle does not try to interpret or validate the arguments before passing them to FindBugs.See the FindBugs TextUICommandLine source for available options.
- Since:
- 2.6
-
jvmArgs
@Incubating public FindBugs jvmArgs(Iterable<String> arguments)
Any additional arguments to be passed along to FindBugs JVM process.Arguments can contain general JVM flags like
-Xdebug
and also FindBugs system properties like-Dfindbugs.loadPropertiesFrom=...
- Since:
- 4.3
-
jvmArgs
@Incubating public FindBugs jvmArgs(String... arguments)
Any additional arguments to be passed along to FindBugs JVM process.Arguments can contain general JVM flags like
-Xdebug
and also FindBugs system properties like-Dfindbugs.loadPropertiesFrom=...
- Since:
- 4.3
-
getSource
@PathSensitive(RELATIVE) public FileTree getSource()
Returns the source for this task, after the include and exclude patterns have been applied. Ignores source files which do not exist.- Overrides:
getSource
in classSourceTask
- Returns:
- The source.
-
getCandidateClassFiles
@SkipWhenEmpty @PathSensitive(RELATIVE) @InputFiles protected FileCollection getCandidateClassFiles()
The classes to be analyzed.
-
getClasses
@Internal public FileCollection getClasses()
The class directories to be analyzed.
-
setClasses
public void setClasses(FileCollection classes)
The class directories to be analyzed.
-
getClasspath
@Classpath public FileCollection getClasspath()
Compile class path for the classes to be analyzed. The classes on this class path are used during analysis but aren't analyzed themselves.
-
setClasspath
public void setClasspath(FileCollection classpath)
Compile class path for the classes to be analyzed. The classes on this class path are used during analysis but aren't analyzed themselves.
-
getFindbugsClasspath
@Classpath public FileCollection getFindbugsClasspath()
Class path holding the FindBugs library.
-
setFindbugsClasspath
public void setFindbugsClasspath(FileCollection findbugsClasspath)
Class path holding the FindBugs library.
-
getPluginClasspath
@Classpath public FileCollection getPluginClasspath()
Class path holding any additional FindBugs plugins.
-
setPluginClasspath
public void setPluginClasspath(FileCollection pluginClasspath)
Class path holding any additional FindBugs plugins.
-
getIgnoreFailures
public boolean getIgnoreFailures()
Whether to allow the build to continue if there are warnings.- Specified by:
getIgnoreFailures
in interfaceVerificationTask
- Returns:
- false, when the build should break on failure, true when the failures should be ignored.
-
setIgnoreFailures
public void setIgnoreFailures(boolean ignoreFailures)
Whether to allow the build to continue if there are warnings.- Specified by:
setIgnoreFailures
in interfaceVerificationTask
- Parameters:
ignoreFailures
- false to break the build on failure, true to ignore the failures. The default is false.
-
getEffort
@Input @Optional public String getEffort()
The analysis effort level. The value specified should be one ofmin
,default
, ormax
. Higher levels increase precision and find more bugs at the expense of running time and memory consumption.
-
setEffort
public void setEffort(String effort)
The analysis effort level. The value specified should be one ofmin
,default
, ormax
. Higher levels increase precision and find more bugs at the expense of running time and memory consumption.
-
getReportLevel
@Input @Optional public String getReportLevel()
The priority threshold for reporting bugs. If set tolow
, all bugs are reported. If set tomedium
(the default), medium and high priority bugs are reported. If set tohigh
, only high priority bugs are reported.
-
setReportLevel
public void setReportLevel(String reportLevel)
The priority threshold for reporting bugs. If set tolow
, all bugs are reported. If set tomedium
(the default), medium and high priority bugs are reported. If set tohigh
, only high priority bugs are reported.
-
getMaxHeapSize
@Input @Optional public String getMaxHeapSize()
The maximum heap size for the forked findbugs process (ex: '1g').
-
setMaxHeapSize
public void setMaxHeapSize(String maxHeapSize)
The maximum heap size for the forked findbugs process (ex: '1g').
-
getVisitors
@Input @Optional public Collection<String> getVisitors()
The bug detectors which should be run. The bug detectors are specified by their class names, without any package qualification. By default, all detectors which are not disabled by default are run.
-
setVisitors
public void setVisitors(Collection<String> visitors)
The bug detectors which should be run. The bug detectors are specified by their class names, without any package qualification. By default, all detectors which are not disabled by default are run.
-
getOmitVisitors
@Input @Optional public Collection<String> getOmitVisitors()
Similar tovisitors
except that it specifies bug detectors which should not be run. By default, no visitors are omitted.
-
setOmitVisitors
public void setOmitVisitors(Collection<String> omitVisitors)
Similar tovisitors
except that it specifies bug detectors which should not be run. By default, no visitors are omitted.
-
getIncludeFilterConfig
@Incubating @Optional public TextResource getIncludeFilterConfig()
A filter specifying which bugs are reported. Replaces theincludeFilter
property.- Since:
- 2.2
-
setIncludeFilterConfig
@Incubating public void setIncludeFilterConfig(TextResource includeFilterConfig)
A filter specifying which bugs are reported. Replaces theincludeFilter
property.- Since:
- 2.2
-
getExcludeFilterConfig
@Incubating @Optional public TextResource getExcludeFilterConfig()
A filter specifying bugs to exclude from being reported. Replaces theexcludeFilter
property.- Since:
- 2.2
-
setExcludeFilterConfig
@Incubating public void setExcludeFilterConfig(TextResource excludeFilterConfig)
A filter specifying bugs to exclude from being reported. Replaces theexcludeFilter
property.- Since:
- 2.2
-
getExcludeBugsFilterConfig
@Incubating @Optional public TextResource getExcludeBugsFilterConfig()
A filter specifying baseline bugs to exclude from being reported.- Since:
- 2.4
-
setExcludeBugsFilterConfig
@Incubating public void setExcludeBugsFilterConfig(TextResource excludeBugsFilterConfig)
A filter specifying baseline bugs to exclude from being reported.- Since:
- 2.4
-
getExtraArgs
@Input @Optional public Collection<String> getExtraArgs()
Any additional arguments (not covered here more explicitly likeeffort
) to be passed along to FindBugs.Extra arguments are passed to FindBugs after the arguments Gradle understands (like
effort
but before the list of classes to analyze. This should only be used for arguments that cannot be provided by Gradle directly. Gradle does not try to interpret or validate the arguments before passing them to FindBugs.See the FindBugs TextUICommandLine source for available options.
- Since:
- 2.6
-
setExtraArgs
public void setExtraArgs(Collection<String> extraArgs)
Any additional arguments (not covered here more explicitly likeeffort
) to be passed along to FindBugs.Extra arguments are passed to FindBugs after the arguments Gradle understands (like
effort
but before the list of classes to analyze. This should only be used for arguments that cannot be provided by Gradle directly. Gradle does not try to interpret or validate the arguments before passing them to FindBugs.See the FindBugs TextUICommandLine source for available options.
- Since:
- 2.6
-
getShowProgress
@Input @Optional public boolean getShowProgress()
Indicates whether analysis progress should be rendered on standard output. Defaults to false.- Since:
- 4.2
-
setShowProgress
public void setShowProgress(boolean showProgress)
Indicates whether analysis progress should be rendered on standard output.- Since:
- 4.2
-
getJvmArgs
@Input @Optional @Incubating public Collection<String> getJvmArgs()
Any additional arguments to be passed along to FindBugs JVM process.Arguments can contain general JVM flags like
-Xdebug
and also FindBugs system properties like-Dfindbugs.loadPropertiesFrom=...
- Since:
- 4.3
-
setJvmArgs
@Incubating public void setJvmArgs(Collection<String> jvmArgs)
Any additional arguments to be passed along to FindBugs JVM process.Arguments can contain general JVM flags like
-Xdebug
and also FindBugs system properties like-Dfindbugs.loadPropertiesFrom=...
- Since:
- 4.3
-
-