apache/maven · error

Expected LoggerFactory to be of type '{}', but found '{}' in

Error message

Expected LoggerFactory to be of type '{}', but found '{}' instead. The --fail-on-severity flag will not take effect.

What it means

Error "Expected LoggerFactory to be of type '{}', but found '{}' instead. The --fail-on-severity flag will not take effect." thrown in apache/maven.

Source

Thrown at compat/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java:589

        slf4jLogger = slf4jLoggerFactory.getLogger(this.getClass().getName());

        if (commandLine.hasOption(CLIManager.FAIL_ON_SEVERITY)) {
            String logLevelThreshold = commandLine.getOptionValue(CLIManager.FAIL_ON_SEVERITY);

            if (slf4jLoggerFactory instanceof LogLevelRecorder recorder) {
                LogLevelRecorder.Level level =
                        switch (logLevelThreshold.toLowerCase(Locale.ENGLISH)) {
                            case "warn", "warning" -> LogLevelRecorder.Level.WARN;
                            case "error" -> LogLevelRecorder.Level.ERROR;
                            default ->
                                throw new IllegalArgumentException(
                                        logLevelThreshold
                                                + " is not a valid log severity threshold. Valid severities are WARN/WARNING and ERROR.");
                        };
                recorder.setMaxLevelAllowed(level);
                slf4jLogger.info("Enabled to break the build on log level {}.", logLevelThreshold);
            } else {
                slf4jLogger.warn(
                        "Expected LoggerFactory to be of type '{}', but found '{}' instead. "
                                + "The --fail-on-severity flag will not take effect.",
                        LogLevelRecorder.class.getName(),
                        slf4jLoggerFactory.getClass().getName());
            }
        }

        // check for presence of deprecated options and print warning
        boolean fail = false;
        for (Option option : cliRequest.commandLine.getOptions()) {
            if (option.isDeprecated()) {
                StringBuilder sb = new StringBuilder();
                sb.append("The option -").append(option.getOpt());
                if (option.getLongOpt() != null) {
                    sb.append(",--").append(option.getLongOpt());
                }
                sb.append(" is deprecated ");
                if (option.getDeprecated().isForRemoval()) {

View on GitHub (pinned to e4093d4e12)

When it happens

Trigger: Thrown at compat/maven-embedder/src/main/java/org/apache/maven/cli/MavenCli.java:589 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of apache/maven@e4093d4e12 (2026-08-21). Data as JSON: /api/errors/d849a2e529041269. Report an issue: GitHub.