Package org.gradle.api.problems

## Interface Problem

- All Known Subinterfaces:
    `ReportableProblem`

      @Incubating
      public interface Problem

  Interface for describing structured information about a problem.
  Since:
    8.4

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.util.Map<java.lang.String,​java.lang.String>` | `getAdditionalData()` | Additional Data about the problem.
    `java.lang.Throwable` | `getCause()` | The exception that caused the problem.
    `java.lang.String` | `getDetails()` | A long description detailing the problem.
    `DocLink` | `getDocumentationLink()` | A link to the documentation for this problem.
    `java.lang.String` | `getLabel()` | The label of the problem.
    `ProblemGroup` | `getProblemGroup()` | Returns the problem group.
    `java.lang.String` | `getProblemType()` | Returns the problem type.
    `Severity` | `getSeverity()` | Problem severity.
    `java.util.List<java.lang.String>` | `getSolutions()` | A list of possible solutions the user can try to fix the problem.
    `ProblemLocation` | `getWhere()` |

- - ### Method Detail

    - #### getProblemGroup

          ProblemGroup getProblemGroup()

      Returns the problem group.
      Returns:
        the problem group

    - #### getProblemType

          java.lang.String getProblemType()

      Returns the problem type.
      Returns:
        the problem type

    - #### getLabel

          java.lang.String getLabel()

      The label of the problem.

      Labels should be short and concise, so they fit approximately in a single line.

    - #### getDetails

          @Nullable
          java.lang.String getDetails()

      A long description detailing the problem.

      Details can elaborate on the problem, and provide more information about the problem. They can be multiple lines long, but should not detail solutions; for that, use `getSolutions()`.

    - #### getSeverity

          Severity getSeverity()

      Problem severity.

      The severity of a problem is a hint to the user about how important the problem is. ERROR will fail the build, WARNING will not.

    - #### getWhere

          @Nullable
          ProblemLocation getWhere()

    - #### getDocumentationLink

          @Nullable
          DocLink getDocumentationLink()

      A link to the documentation for this problem.

    - #### getSolutions

          java.util.List<java.lang.String> getSolutions()

      A list of possible solutions the user can try to fix the problem.

    - #### getCause

          @Nullable
          java.lang.Throwable getCause()

      The exception that caused the problem.

    - #### getAdditionalData

          java.util.Map<java.lang.String,​java.lang.String> getAdditionalData()

      Additional Data about the problem. In a map so it can be somewhat structured.