{"record":{"id":"402594f834991029","repo":"apache/maven","slug":"error-402594","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":259,"sourceCode":"                        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);\n                                for (String mojoInfo : mojoIssues.keySet()) {\n                                    logger.warn(\"   * Mojo {}\", mojoInfo);\n                                    for (String mojoIssue : mojoIssues.get(mojoInfo)) {\n                                        logger.warn(\"     - {}\", mojoIssue);\n                                    }\n                                }\n                            }\n                        }\n                    }\n                    logger.warn(\"\");\n                }\n            }\n            logger.warn(\"\");\n            if (validationReportLevel == ValidationReportLevel.VERBOSE) {\n                logger.warn(\n                        \"Fix reported issues by adjusting plugin configuration or by upgrading above listed plugins. If no upgrade available, please notify plugin maintainers about reported issues.\");\n            }\n            logger.warn(\n                    \"For more or less details, use 'maven.plugin.validation' property with one of the values (case insensitive): {}\",\n                    Arrays.toString(ValidationReportLevel.values()));\n            logger.warn(\"\");\n        }","sourceCodeStart":241,"sourceCodeEnd":277,"githubUrl":"https://github.com/apache/maven/blob/e4093d4e120eac99d6bdce5ba67cace2f3085c97/impl/maven-core/src/main/java/org/apache/maven/plugin/internal/DefaultPluginValidationManager.java#L241-L277","documentation":"A single mojo-level issue line ('     - <issue text>') in the VERBOSE plugin validation report, nested under its '   * Mojo ...' parent. This is the most granular finding Maven emits: the exact problem detected in one mojo class of one plugin version, e.g. 'uses deprecated API' details.","triggerScenarios":"Verbose validation report iterating issues.mojoIssues values; each string in the LinkedHashSet for a mojo prints one such line, preserving registration order.","commonSituations":"Deprecated Mojo API usage details (which method/class is deprecated), missing @Component field correctness, or classloader assumptions broken by newer Maven - usually from mojos not rebuilt for the current Maven baseline.","solutions":["Use the message as the bug report body: upgrade the plugin first, since these findings are almost always fixed upstream","If it names a deprecated API you also use in custom mojos, refactor that call and release","Suppress known noise via maven.plugin.validation.excludes for the plugin GAV"],"exampleFix":null,"handlingStrategy":"validation","validationCode":"mvn clean install -Dmaven.plugin.validation=verbose 2>&1 | grep '     - '  # extract the granular issue lines","typeGuard":null,"tryCatchPattern":null,"preventionTips":["For custom mojos, avoid removed/deprecated Maven API and use the injected Session instead of legacy lookups","Rebuild and release custom plugins after each Maven baseline upgrade to keep findings at zero"],"tags":["maven","plugin-validation","mojo","build-report"],"backgroundTag":"plugin-validation-report","analyzedSha":"e4093d4e120eac99d6bdce5ba67cace2f3085c97","analyzedAt":"2026-08-21T22:58:24.034Z","schemaVersion":2},"datasetVersion":"2026-08-21T23:17:16.201Z"}