Package org.gradle.api.reporting.dependencies

## Class HtmlDependencyReportTask

- java.lang.Object
- - org.gradle.api.internal.AbstractTask
  - - org.gradle.api.DefaultTask
    - - org.gradle.api.internal.ConventionTask
      - - org.gradle.api.reporting.dependencies.HtmlDependencyReportTask

- All Implemented Interfaces:
    `java.lang.Comparable<Task>`, `org.gradle.api.internal.DynamicObjectAware`, `org.gradle.api.internal.IConventionAware`, `org.gradle.api.internal.TaskInternal`, `ExtensionAware`, `Reporting<DependencyReportContainer>`, `Task`, `Configurable<Task>`

      @UntrackedTask(because="We can\'t describe the dependency tree of all projects as input")
      public class HtmlDependencyReportTask
      extends org.gradle.api.internal.ConventionTask
      implements Reporting<DependencyReportContainer>

  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.destination = file("build/reports/project/dependencies")
       }

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.gradle.api.Task

      `Task.Namer`

  - ### Field Summary

    - ### Fields inherited from interface org.gradle.api.Task

      `TASK_ACTION, TASK_CONSTRUCTOR_ARGS, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `HtmlDependencyReportTask()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `generate()` |
    `protected org.gradle.api.internal.CollectionCallbackActionDecorator` | `getCallbackActionDecorator()` | Required for decorating reports container callbacks for tracing user code application.
    `protected ObjectFactory` | `getObjectFactory()` |
    `DirectoryProperty` | `getProjectReportDirectory()` | Returns the project report directory.
    `java.util.Set<Project>` | `getProjects()` | Returns the set of projects to generate a report for.
    `DependencyReportContainer` | `getReports()` | A `ReportContainer` instance.
    `protected org.gradle.api.internal.artifacts.ivyservice.ivyresolve.strategy.VersionComparator` | `getVersionComparator()` |
    `protected org.gradle.api.internal.artifacts.ivyservice.ivyresolve.strategy.VersionParser` | `getVersionParser()` |
    `protected org.gradle.api.internal.artifacts.ivyservice.ivyresolve.strategy.VersionSelectorScheme` | `getVersionSelectorScheme()` |
    `DependencyReportContainer` | `reports​(Closure closure)` | Allow configuration of the report container by closure.
    `DependencyReportContainer` | `reports​(Action<? super DependencyReportContainer> configureAction)` | Allow configuration of the report container by closure.
    `void` | `setProjects​(java.util.Set<Project> projects)` | Specifies the set of projects to generate this report for.

    - ### Methods inherited from class org.gradle.api.internal.ConventionTask

      `conventionMapping, conventionMapping, getConventionMapping`

    - ### Methods inherited from class org.gradle.api.DefaultTask

      `compareTo, configure, dependsOn, doFirst, doFirst, doFirst, doLast, doLast, doLast, finalizedBy, getActions, getAnt, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExtensions, getFinalizedBy, getGroup, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOutputs, getPath, getProject, getShouldRunAfter, getState, getTaskDependencies, getTemporaryDir, getTimeout, hasProperty, mustRunAfter, onlyIf, onlyIf, onlyIf, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setFinalizedBy, setGroup, setMustRunAfter, setOnlyIf, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, usesService`

    - ### Methods inherited from class org.gradle.api.internal.AbstractTask

      `appendParallelSafeAction, doNotTrackState, getAsDynamicObject, getConvention, getIdentityPath, getImpliesSubProjects, getLifecycleDependencies, getOnlyIf, getReasonNotToTrackState, getReasonTaskIsIncompatibleWithConfigurationCache, getRequiredServices, getServices, getSharedResources, getStandardOutputCapture, getTaskActions, getTaskIdentity, getTemporaryDirFactory, hasTaskActions, injectIntoNewInstance, isCompatibleWithConfigurationCache, isEnabled, isHasCustomActions, notCompatibleWithConfigurationCache, prependParallelSafeAction, setImpliesSubProjects`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.gradle.api.Task

      `doNotTrackState, getConvention, notCompatibleWithConfigurationCache`

- - ### Constructor Detail

    - #### HtmlDependencyReportTask

          public HtmlDependencyReportTask()

  - ### Method Detail

    - #### getProjectReportDirectory

          @Internal
          @Incubating
          public DirectoryProperty getProjectReportDirectory()

      Returns the project report directory.
      Returns:
        the directory to store project reports
      Since:
        7.1

    - #### getReports

          public DependencyReportContainer getReports()

      Description copied from interface: `Reporting`
      A `ReportContainer` instance.

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

      Specified by:
        `getReports` in interface `Reporting<DependencyReportContainer>`
      Returns:
        The report container

    - #### reports

          public DependencyReportContainer reports​(Closure closure)

      Description copied from interface: `Reporting`
      Allow configuration of the report container by closure.

           reports {
             html {
               enabled false
             }
             xml.destination "build/reports/myReport.xml"
           }

      Specified by:
        `reports` in interface `Reporting<DependencyReportContainer>`
      Parameters:
        `closure` - The configuration
      Returns:
        The report container

    - #### reports

          public DependencyReportContainer reports​(Action<? super DependencyReportContainer> configureAction)

      Description copied from interface: `Reporting`
      Allow configuration of the report container by closure.

           reports {
             html {
               enabled false
             }
             xml.destination "build/reports/myReport.xml"
           }

      Specified by:
        `reports` in interface `Reporting<DependencyReportContainer>`
      Parameters:
        `configureAction` - The configuration
      Returns:
        The report container

    - #### getObjectFactory

          @Inject
          protected ObjectFactory getObjectFactory()

    - #### getVersionSelectorScheme

          @Inject
          protected org.gradle.api.internal.artifacts.ivyservice.ivyresolve.strategy.VersionSelectorScheme getVersionSelectorScheme()

    - #### getVersionComparator

          @Inject
          protected org.gradle.api.internal.artifacts.ivyservice.ivyresolve.strategy.VersionComparator getVersionComparator()

    - #### getVersionParser

          @Inject
          protected org.gradle.api.internal.artifacts.ivyservice.ivyresolve.strategy.VersionParser getVersionParser()

    - #### getCallbackActionDecorator

          @Inject
          protected org.gradle.api.internal.CollectionCallbackActionDecorator getCallbackActionDecorator()

      Required for decorating reports container callbacks for tracing user code application.
      Since:
        5.1

    - #### generate

          public void generate()

    - #### getProjects

          @Internal
          public java.util.Set<Project> getProjects()

      Returns the set of projects to generate a report for. By default, the report is generated for the task's containing project.
      Returns:
        The set of files.

    - #### setProjects

          public void setProjects​(java.util.Set<Project> projects)

      Specifies the set of projects to generate this report for.
      Parameters:
        `projects` - The set of projects. Must not be null.