# HtmlDependencyReportTask

API Documentation: | `HtmlDependencyReportTask`

Generates an HTML dependency report. This report combines the features of the ASCII dependency report and those of the ASCII dependency insight report. For a given project, it generates a tree of the dependencies of every configuration, and each dependency can be clicked to show the insight of this dependency.

This task generates a report for the task's containing project by default. But it can also generate a report for multiple projects, by setting the value of the `projects` property. Here's how to generate an HTML dependency report for all the projects of a multi-project build, for example:

    htmlDependencyReport {
        projects = project.allprojects
    }

The report is generated in the `build/reports/project/dependencies` directory by default. This can also be changed by setting the `reports.html.destination` property:

    htmlDependencyReport {
        reports.html.outputLocation = file("build/reports/project/dependencies")
    }

### Properties

Property | Description
`outputFile` | The file which the report will be written to. When set to `null`, the report is written to `System.out`. Defaults to `null`.
`projects` | The set of project to generate this report for. By default, the report is generated for the task's containing project.
`reports` | A `ReportContainer` instance.

### Methods

Method | Description
`reports(configureAction)` | Allow configuration of the report container by closure.

### Script blocks

No script blocks

### Property details

#### `File` `outputFile`

The file which the report will be written to. When set to `null`, the report is written to `System.out`. Defaults to `null`.

#### ``Set`<`Project`>` `projects`

The set of project to generate this report for. By default, the report is generated for the task's containing project.

#### `T` `reports` (read-only)

A `ReportContainer` instance.

Implementers specify a specific implementation of `ReportContainer` that describes the types of reports that are available.

### Method details

#### `T` `reports`(``Action`<? super `T`>` configureAction)

Allow configuration of the report container by closure.

    reports {
      html {
        required false
      }
      xml.outputLocation = "build/reports/myReport.xml"
    }