{"record":{"id":"08d4be3ce41a607c","repo":"apache/maven","slug":"error-08d4be","errorCode":null,"errorMessage":" {}","messagePattern":" \\{\\}","errorType":"console","errorClass":null,"httpStatus":null,"severity":"warning","filePath":"impl/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginValidationManager.java","lineNumber":154,"sourceCode":"\n    private String pluginKey(String groupId, String artifactId, String version) {\n        return groupId + \":\" + artifactId + \":\" + version;\n    }\n\n    private String pluginKey(MojoDescriptor mojoDescriptor) {\n        PluginDescriptor pd = mojoDescriptor.getPluginDescriptor();\n        return pluginKey(pd.getGroupId(), pd.getArtifactId(), pd.getVersion());\n    }\n\n    private String pluginKey(Artifact pluginArtifact) {\n        return pluginKey(pluginArtifact.getGroupId(), pluginArtifact.getArtifactId(), pluginArtifact.getVersion());\n    }\n\n    private void mayReportInline(RepositorySystemSession session, IssueLocality locality, String issue) {\n        if (locality == IssueLocality.INTERNAL) {\n            ValidationReportLevel validationReportLevel = validationReportLevel(session);\n            if (INLINE_VALIDATION_LEVEL.contains(validationReportLevel)) {\n                logger.warn(\" {}\", issue);\n            }\n        }\n    }\n\n    @Override\n    public void reportPluginValidationIssue(\n            IssueLocality locality, RepositorySystemSession session, Artifact pluginArtifact, String issue) {\n        String pluginKey = pluginKey(pluginArtifact);\n        if (validationPluginExcludes(session).contains(pluginKey)) {\n            return;\n        }\n        PluginValidationIssues pluginIssues =\n                pluginIssues(session).computeIfAbsent(pluginKey, k -> new PluginValidationIssues());\n        pluginIssues.reportPluginIssue(locality, null, issue);\n        mayReportInline(session, locality, issue);\n    }\n\n    @Override","sourceCodeStart":136,"sourceCodeEnd":172,"githubUrl":"https://github.com/apache/maven/blob/e4093d4e120eac99d6bdce5ba67cace2f3085c97/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginValidationManager.java#L136-L172","documentation":"DefaultPluginValidationManager.mayReportInline() prints one line per detected plugin validation issue with locality INTERNAL (issues inside the plugin itself, such as dependencies expected in provided scope or Maven-3-only API usage) right next to the mojo invocation, as a single ' * <issue>' warn line. It only fires when the effective report level is INLINE or BRIEF (the default is INLINE).","triggerScenarios":"Building with default or explicit -Dmaven.plugin.validation=INLINE|BRIEF while a plugin in the plan triggers an internal validation rule — e.g. a plugin packaging Maven core artifacts as compile-scope dependencies, or using deprecated/undocumented Maven APIs.","commonSituations":"After upgrading Maven (validators got stricter), warnings appear for older third-party plugins; maintainers of in-house plugins seeing their own dependency-scope mistakes flagged at each execution.","solutions":["Fix the flagged plugin: correct dependency scopes (Maven core deps to provided), remove isolated/duplicate dependencies, stop using deprecated APIs.","Upgrade the listed plugin — newer releases usually fix reported issues.","If the issue is not actionable for you, silence it per-plugin with -Dmaven.plugin.validation.excludes=<groupId>:<artifactId> (G:A keys), or set -Dmaven.plugin.validation=NONE to mute all reporting."],"exampleFix":"# before: internal issues reported inline at default INLINE level\nmvn package   # ' * [WARNING] ... issue text'\n\n# after: fix the plugin (scope -> provided) or exclude it\nmvn -Dmaven.plugin.validation.excludes=com.example:bad-plugin package","handlingStrategy":"fallback","validationCode":"# guard: if you cannot fix the plugin yet, verify the exclude key is set correctly\n# keys are G:A pairs, comma separated\nmvn -Dmaven.plugin.validation.excludes=com.example:bad-plugin package 2>&1 \\\n  | grep -c ' \\* ' # inline issue lines; expect 0 for excluded plugin","typeGuard":null,"tryCatchPattern":null,"preventionTips":["For in-house plugins: scope Maven core dependencies as provided and avoid deprecated APIs so internal issues never fire.","Upgrade plugins after Maven upgrades; validators get stricter each major release.","Use -Dmaven.plugin.validation=NONE only temporarily and track why."],"tags":["maven","plugin-validation","logging","dependency-scope","plugin-development"],"backgroundTag":"maven-plugin-validation-warnings","analyzedSha":"e4093d4e120eac99d6bdce5ba67cace2f3085c97","analyzedAt":"2026-08-21T22:58:24.034Z","schemaVersion":2},"datasetVersion":"2026-08-22T04:17:13.399Z"}