Interface ProblemCategory
-
@Incubating public interface ProblemCategory
A hierarchical representation for a particular problem type.A category object follows a pattern similar to URNs, it has a namespace, a main category and a subcategory.
The namespace contains information about the origin of the problem: whether it comes from the Gradle core runtime, or from a third-party plugin. For example,
deprecation
, orcompilation
is a main category.Subcategories can be an arbitrary list of strings, that ideally serve as a unique identifier. To use compilation as an example,
[java, unused-variable]
would be a subcategory, that along with the[compilation]
main category, denotes a particular compiler warning. The exact definition of subcategories depends on the problem's domain.- Since:
- 8.6
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.lang.String
getCategory()
The main problem category.java.lang.String
getNamespace()
Returns the namespace.java.util.List<java.lang.String>
getSubcategories()
The problem's subcategories.
-
-
-
Method Detail
-
getNamespace
java.lang.String getNamespace()
Returns the namespace. Describes the component reporting the problem (Gradle core or plugin ID). The currently used namespace for Gradle core isorg.gradle
. if the problem is reported by a plugin, the namespace should be the plugin ID.- Returns:
- the problem's namespace.
- Since:
- 8.6
-
getCategory
java.lang.String getCategory()
The main problem category. Currently used categories- compilation - deprecation - dependency-version-catalog - task-selection - task-validation
- Returns:
- The category string.
- Since:
- 8.6
-
getSubcategories
java.util.List<java.lang.String> getSubcategories()
The problem's subcategories. Currently used subcategories- dependency-version-catalog - alias-not-finished - reserved-alias-name - catalog-file-does-not-exist - toml-syntax-error - too-many-import-files - too-many-import-invocation - no-import-files - deprecation - build-invocation - user-code-direct - user-code-indirect - compilation - groovy-dsl:compilation-failed - type-validation - property:annotation-invalid-in-context - property:cannot-use-optional-on-primitive-types - property:cannot-write-output - property:conflicting-annotations - property:ignored-property-must-not-be-annotated - property:implicit-dependency - property:incompatible-annotations - property:incorrect-use-of-input-annotation - property:input-file-does-not-exist - property:missing-annotation - property:missing-normalization-annotation - property:nested-map-unsupported-key-type - property:nested-type-unsupported - property:mutable-type-with-setter - property:private-getter-must-not-be-annotated - property:unexpected-input-file-type - property:unsupported-notation - property:unknown-implementation - property:unsupported-value-type - property:value-not-set - type:ignored-annotations-on-method - type:invalid-use-of-type-annotation - type:not-cacheable-without-reason
- Returns:
- the subcategories.
- Since:
- 8.6
-
-