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.

We plan to add much more to the existing reports and create additional ones in future releases of Gradle.

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.

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.

Convention properties

The project report defines the following convention properties:

projectsSet<Project>

The projects to generate the reports for. Default value: A one element set with the project the plugin was applied to.

projectReportDirNameString

The name of the directory to generate the project report into, relative to the reports directory. Default value: "project".

projectReportDirFile (read-only)

The directory to generate the project report into. Default value: reportsDir/projectReportDirName.

reportsDirNameString

The name of the directory to generate the project report into, relative to the reports directory. Default value: "reports".

reportsDirFile (read-only)

The directory to generate the project reports into. Default value: buildDir/reportsDirName.

These convention properties are provided by a convention object of type ProjectReportsPluginConvention.

Configuring the project report tasks via the plugin’s convention properties is deprecated. If you need to change from the default values, configure the appropriate tasks directly. If you want to configure all report tasks of the same type in the project, use tasks.withType(…​).configureEach(…​) (where the type can be HtmlDependencyReportTask for example).