{"record":{"id":"99063d3355b772bd","repo":"apache/maven","slug":"error-99063d","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":237,"sourceCode":"            logger.warn(\"\");\n            logger.warn(\"Plugin {} validation issues were detected in following plugin(s)\", issueLocalitiesToReport);\n            logger.warn(\"\");\n\n            // Sorting the plugins\n            List<Map.Entry<String, PluginValidationIssues>> sortedEntries = new ArrayList<>(issuesMap.entrySet());\n            sortedEntries.sort(Map.Entry.comparingByKey(String.CASE_INSENSITIVE_ORDER));\n\n            for (Map.Entry<String, PluginValidationIssues> entry : sortedEntries) {\n                PluginValidationIssues issues = entry.getValue();\n                if (!hasAnythingToReport(issues, issueLocalitiesToReport)) {\n                    continue;\n                }\n                logger.warn(\" * {}\", entry.getKey());\n                if (validationReportLevel == ValidationReportLevel.VERBOSE) {\n                    if (!issues.pluginDeclarations.isEmpty()) {\n                        logger.warn(\"  Declared at location(s):\");\n                        for (String pluginDeclaration : issues.pluginDeclarations) {\n                            logger.warn(\"   * {}\", pluginDeclaration);\n                        }\n                    }\n                    if (!issues.pluginIssues.isEmpty()) {\n                        for (IssueLocality issueLocality : issueLocalitiesToReport) {\n                            Set<String> pluginIssues = issues.pluginIssues.get(issueLocality);\n                            if (pluginIssues != null && !pluginIssues.isEmpty()) {\n                                logger.warn(\"  Plugin {} issue(s):\", issueLocality);\n                                for (String pluginIssue : pluginIssues) {\n                                    logger.warn(\"   * {}\", pluginIssue);\n                                }\n                            }\n                        }\n                    }\n                    if (!issues.mojoIssues.isEmpty()) {\n                        for (IssueLocality issueLocality : issueLocalitiesToReport) {\n                            Map<String, LinkedHashSet<String>> mojoIssues = issues.mojoIssues.get(issueLocality);\n                            if (mojoIssues != null && !mojoIssues.isEmpty()) {\n                                logger.warn(\"  Mojo {} issue(s):\", issueLocality);","sourceCodeStart":219,"sourceCodeEnd":255,"githubUrl":"https://github.com/apache/maven/blob/e4093d4e120eac99d6bdce5ba67cace2f3085c97/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginValidationManager.java#L219-L255","documentation":"A single entry under 'Declared at location(s):' in the VERBOSE plugin validation report: the physical source location (e.g. /path/to/pom.xml, line 42) of one declaration of the plugin that has validation issues. One line is printed per declaration, so the same plugin can list multiple locations across the reactor.","triggerScenarios":"-Dmaven.plugin.validation=verbose build where the flagged plugin was invoked from one or more POM declarations; each declaration's InputLocation string is printed as '   * <location>'.","commonSituations":"Same plugin declared with different versions in different modules; plugin re-declared in profile blocks; teams hunting down which of dozens of POMs pulls in the flagged version.","solutions":["Edit each listed location and align the plugin declaration (usually pin one version in pluginManagement)","Remove redundant declarations so only the parent-managed one remains","Re-run the build with the same verbose setting to confirm the plugin no longer appears in the report"],"exampleFix":null,"handlingStrategy":"validation","validationCode":"# verify how many places declare a plugin (should converge to one managed entry)\ngrep -rn --include=pom.xml '<artifactId>THE-PLUGIN</artifactId>' .","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Keep one canonical declaration point per plugin; treat multiple declarations as review findings","Remove plugin declarations from profiles unless the profile is actually activated"],"tags":["maven","plugin-validation","build-report","pom-location"],"backgroundTag":"plugin-validation-report","analyzedSha":"e4093d4e120eac99d6bdce5ba67cace2f3085c97","analyzedAt":"2026-08-21T22:58:24.034Z","schemaVersion":2},"datasetVersion":"2026-08-21T23:17:16.201Z"}