{"record":{"id":"3afc5b0fc5415a3a","repo":"apache/maven","slug":"enable-verbose-output-x-to-see-precisely-which-3afc5b","errorCode":null,"errorMessage":"Enable verbose output (-X) to see precisely which goals are not marked as thread-safe.","messagePattern":"Enable verbose output \\(-X\\) to see precisely which goals are not marked as thread-safe\\.","errorType":"console","errorClass":null,"httpStatus":null,"severity":"info","filePath":"impl/maven-core/src/main/java/org/apache/maven/lifecycle/internal/concurrent/BuildPlanExecutor.java","lineNumber":342,"sourceCode":"                    }\n                    if (logger.isDebugEnabled()) {\n                        Set<MojoDescriptor> unsafeGoals = unsafeExecutions.stream()\n                                .map(MojoExecution::getMojoDescriptor)\n                                .collect(Collectors.toSet());\n                        logger.warn(\"The following goals are not Maven 4 goals:\");\n                        for (MojoDescriptor unsafeGoal : unsafeGoals) {\n                            logger.warn(\"  \" + unsafeGoal.getId());\n                        }\n                    } else {\n                        Set<Plugin> unsafePlugins = unsafeExecutions.stream()\n                                .map(MojoExecution::getPlugin)\n                                .collect(Collectors.toSet());\n                        logger.warn(\"The following plugins are not Maven 4 plugins:\");\n                        for (Plugin unsafePlugin : unsafePlugins) {\n                            logger.warn(\"  \" + unsafePlugin.getId());\n                        }\n                        logger.warn(\"\");\n                        logger.warn(\"Enable verbose output (-X) to see precisely which goals are not marked as\"\n                                + \" thread-safe.\");\n                    }\n                    logger.warn(MultilineMessageHelper.separatorLine());\n                }\n            }\n        }\n\n        void execute() {\n            try (var phase = executor.phase()) {\n                plan();\n                executePlan();\n            } catch (Exception e) {\n                session.getResult().addException(e);\n            }\n        }\n\n        @Override\n        public void close() {","sourceCodeStart":324,"sourceCodeEnd":360,"githubUrl":"https://github.com/apache/maven/blob/e4093d4e120eac99d6bdce5ba67cace2f3085c97/impl/maven-core/src/main/java/org/apache/maven/lifecycle/internal/concurrent/BuildPlanExecutor.java#L324-L360","documentation":"Closing hint of the non-debug Maven-4 concurrency report: after listing non-v4 plugins, BuildPlanExecutor logs 'Enable verbose output (-X) to see precisely which goals are not marked as thread-safe.' plus a separator line. The wording is inherited from the classic thread-safety report but here points at goal-level detail of the v4-API check.","triggerScenarios":"Automatically emitted whenever the plugin-level 'not Maven 4 plugins' list is printed (threads > 1, unsafe v3 executions present, debug disabled).","commonSituations":"Maven 4 adopters deciding which exact goals block safe concurrency; support/triage workflows needing per-goal evidence.","solutions":["Re-run with -X and read the 'The following goals are not Maven 4 goals:' section for exact ids.","Upgrade the identified plugins or temporarily drop -T.","Use help:describe -Dplugin=<g:a> -Ddetail to inspect a plugin's goals and their API level."],"exampleFix":"# before\nmvn -T 4 install   # 'Enable verbose output (-X) ...'\n\n# after\nmvn -X -T 4 install 2>&1 | grep -A15 'not Maven 4 goals'","handlingStrategy":"validation","validationCode":"# guard: archive the goal-level v4 report for triage\nmvn -T 1C install 2>&1 | tee build.log || true\n(mvn -X -T 1C install 2>&1 | grep -A30 'not Maven 4 goals') > v3-goals.txt || true","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Pair every Maven 4 -T rollout with one -X capture of the goal-level report.","Note the message wording talks about 'thread-safe' but refers to the v4-API check; use the section headers in -X output to disambiguate."],"tags":["maven","maven-4","concurrent-build","verbose-logging","diagnostics"],"backgroundTag":"maven-plugin-not-thread-safe","analyzedSha":"e4093d4e120eac99d6bdce5ba67cace2f3085c97","analyzedAt":"2026-08-21T22:58:24.034Z","schemaVersion":2},"datasetVersion":"2026-08-21T23:17:16.201Z"}