Groovy Documentation

org.gradle.api.tasks.diagnostics
[Groovy] Class DependencyInsightReportTask

java.lang.Object
  org.gradle.api.internal.AbstractTask
      org.gradle.api.DefaultTask
          org.gradle.api.tasks.diagnostics.DependencyInsightReportTask

@Incubating
class DependencyInsightReportTask
extends DefaultTask

Generates a report that attempts to answer questions like:

Use this task to get insight into a particular dependency (or dependencies) and find out what exactly happens during dependency resolution and conflict resolution. If the dependency version was forced or selected by the conflict resolution this information will be available in the report.

While the regular dependencies report (DependencyReportTask) shows the path from the top level dependencies down through the transitive dependencies, the dependency insight report shows the path from a particular dependency to the dependencies that pulled it in. That is, it is an inverted view of the regular dependencies report.

The task requires setting the dependency spec and the configuration. For more information on how to configure those please refer to docs for DependencyInsightReportTask#setDependencySpec(Object)#setDependencySpec(Object) and DependencyInsightReportTask#setConfiguration(String)#setConfiguration(String).

The task can also be configured from the command line. For more information please refer to DependencyInsightReportTask#setDependencySpec(Object)#setDependencySpec(Object) and DependencyInsightReportTask#setConfiguration(String)#setConfiguration(String)


Property Summary
Configuration configuration

Configuration to look the dependency in

Spec dependencySpec

Selects the dependency (or dependencies if multiple matches found) to show the report for.

 
Constructor Summary
DependencyInsightReportTask(StyledTextOutputFactory outputFactory)

 
Method Summary
void report()

void setConfiguration(Configuration configuration)

Sets the configuration to look the dependency in.

void setConfiguration(String configurationName)

Sets the configuration (via name) to look the dependency in.

void setDependencySpec(Spec dependencySpec)

The dependency spec selects the dependency (or dependencies if multiple matches found) to show the report for.

void setDependencySpec(Object dependencyInsightNotation)

Configures the dependency to show the report for.

 

Property Detail

configuration

Configuration configuration
Configuration to look the dependency in


dependencySpec

Spec dependencySpec
Selects the dependency (or dependencies if multiple matches found) to show the report for.


 
Constructor Detail

DependencyInsightReportTask

@Inject
DependencyInsightReportTask(StyledTextOutputFactory outputFactory)


 
Method Detail

report

@TaskAction
void report()


setConfiguration

void setConfiguration(Configuration configuration)
Sets the configuration to look the dependency in.
Parameters:
configuration


setConfiguration

@CommandLineOption(options = "configuration", description = "Looks for the dependency in given configuration.")
void setConfiguration(String configurationName)
Sets the configuration (via name) to look the dependency in.

This method is exposed to the command line interface. Example usage:

gradle dependencyInsight --configuration runtime --dependency slf4j
Parameters:
configurationName


setDependencySpec

void setDependencySpec(Spec dependencySpec)
The dependency spec selects the dependency (or dependencies if multiple matches found) to show the report for. The spec receives an instance of DependencyResult as parameter.
Parameters:
dependencySpec


setDependencySpec

@CommandLineOption(options = "dependency", description = "Shows the details of given dependency.")
void setDependencySpec(Object dependencyInsightNotation)
Configures the dependency to show the report for. Multiple notation formats are supported: Strings, instances of Spec and groovy closures. Spec and closure receive DependencyResult as parameter. Examples of String notation: 'org.slf4j:slf4j-api', 'slf4j-api', or simply: 'slf4j'. The input may potentially match multiple dependencies. See also DependencyInsightReportTask#setDependencySpec(Spec)#setDependencySpec(Spec)

This method is exposed to the command line interface. Example usage:

gradle dependencyInsight --dependency slf4j
Parameters:
dependencyInsightNotation


 

Gradle API 1.3