# DependencyInsightReportTask

API Documentation: | `DependencyInsightReportTask`

Generates a report that attempts to answer questions like:

- Why is this dependency in the dependency graph?
- Exactly which dependencies are pulling this dependency into the graph?
- What is the actual version (i.e. *selected* version) of the dependency that will be used? Is it the same as what was *requested*?
- Why is the *selected* version of a dependency different to the *requested*?

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(java.lang.Object)` and `DependencyInsightReportTask.setConfiguration(java.lang.String)`.

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

### Properties

Property | Description
`configuration` | Configuration to look the dependency in
`dependencySpec` | Selects the dependency (or dependencies if multiple matches found) to show the report for.

### Methods

No methods

### Script blocks

No script blocks

### Property details

#### `Configuration` `configuration`

Configuration to look the dependency in

Default with `java` plugin:
  `compileClasspath` configuration

#### ``Spec`<`DependencyResult`>` `dependencySpec`

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

Default with `java` plugin:
  -