The Project report plugin adds some tasks to your project which generate reports containing useful information about your build. These tasks generate the same content that you get by executing the tasks, dependencies, and properties tasks from the command line (see Command-line project reporting). In contrast to the command line reports, the report plugin generates the reports into a file. There is also an aggregating task that depends on all report tasks added by the plugin.

Usage

To use the Project report plugin, include the following in your build script:

plugins {
    id 'project-report'
}

Tasks

The project report plugin defines the following tasks:

dependencyReportDependencyReportTask

Generates the project dependency report.

htmlDependencyReportHtmlDependencyReportTask

Generates an HTML dependency and dependency insight report for the project or a set of projects.

propertyReportPropertyReportTask

Generates the project property report.

taskReportTaskReportTask

Generates the project task report.

projectReportTask

Depends on: dependencyReport, propertyReport, taskReport, htmlDependencyReport

Generates all project reports.

Report output

By default, the reports are written to the project directory under the reporting base directory, which resolves to build/reports/project/:

tasks.txt

The plain-text task report, produced by taskReport.

properties.txt

The plain-text property report, produced by propertyReport.

dependencies.txt

The plain-text dependency report, produced by dependencyReport.

dependencies/

The HTML dependency report, produced by htmlDependencyReport.

The plugin applies the reporting base plugin, so you can change the base directory for all reports through the reporting extension:

reporting {
    baseDirectory = layout.buildDirectory.dir('my-reports')
}

Project layout

The project report plugin does not require any particular project layout.

Dependency management

The project report plugin does not define any dependency configurations.