# ReportingExtension

API Documentation: | `ReportingExtension`

A project extension named "reporting" that provides basic reporting settings and utilities.

Example usage:

    plugins {
        id("org.gradle.reporting-base")
    }

    reporting {
        // change the base directory where all reports are generated
        baseDirectory = layout.buildDirectory.dir("our-reports")
    }

    // A directory for test reports
    reporting.baseDirectory.dir("test-reports")

    // A report file
    reporting.baseDirectory.file("index.html")

When implementing a task that produces reports, the location of where to generate reports should be obtained from `ReportingExtension.getBaseDirectory()`.

### Properties

Property | Description
`baseDirectory` | Returns base directory property to use for all reports.
`reports` | Incubating Container for aggregation reports, which may be configured automatically in reaction to the presence of the jvm-test-suite plugin.

### Methods

Method | Description
`file(path)` | Deprecated Creates a file object for the given path, relative to `ReportingExtension.getBaseDirectory()`.

### Script blocks

No script blocks

### Property details

#### `DirectoryProperty` `baseDirectory`

Returns base directory property to use for all reports.

#### ``ExtensiblePolymorphicDomainObjectContainer`<`ReportSpec`>` `reports` (read-only)

Note: This property is incubating and may change in a future version of Gradle.

Container for aggregation reports, which may be configured automatically in reaction to the presence of the jvm-test-suite plugin.

### Method details

#### `File` `file`(`String` path)

Note: This method is deprecated and will be removed in the next major version of Gradle.

Creates a file object for the given path, relative to `ReportingExtension.getBaseDirectory()`.

The reporting base dir can be changed, so users of this method should use it on demand where appropriate.