quarkusio/quarkus · error · BootstrapMavenException

Failed to set up DefaultPathTranslator for Maven < 3.8.5 Def

Error message

Failed to set up DefaultPathTranslator for Maven < 3.8.5 DefaultPathTranslator

What it means

BootstrapMavenException from createFileProfileActivator: reflective setup of the ProfileActivationFilePathInterpolator with DefaultPathTranslator (a workaround needed for Maven versions older than 3.8.5 where the translator is not auto-wired) failed — typically a NoSuchMethod/ClassNotFound caused by an unexpected Maven version on the classpath.

Source

Thrown at independent-projects/bootstrap/maven-resolver/src/main/java/io/quarkus/bootstrap/resolver/maven/BootstrapMavenContext.java:1224

    private static boolean isMavenRepoEnvVarOption(String varName, String repoId, String option) {
        return varName.length() == BOOTSTRAP_MAVEN_REPO_PREFIX.length() + repoId.length() + option.length()
                && varName.endsWith(option);
    }

    private static FileProfileActivator createFileProfileActivator() throws BootstrapMavenException {
        var activator = new FileProfileActivator();
        var translator = new DefaultPathTranslator();
        try {
            var pathInterpolator = new ProfileActivationFilePathInterpolator();
            pathInterpolator.setPathTranslator(translator);
            activator.setProfileActivationFilePathInterpolator(pathInterpolator);
        } catch (NoClassDefFoundError e) {
            // ProfileActivationFilePathInterpolator not found; Maven < 3.8.5 (https://github.com/apache/maven/pull/649)
            try {
                activator.getClass().getMethod("setPathTranslator", org.apache.maven.model.path.PathTranslator.class)
                        .invoke(activator, translator);
            } catch (ReflectiveOperationException reflectionExc) {
                throw new BootstrapMavenException(
                        "Failed to set up DefaultPathTranslator for Maven < 3.8.5 DefaultPathTranslator",
                        reflectionExc);
            }
        }
        return activator;
    }
}

View on GitHub (pinned to e1c734241f)

Solutions

  1. Upgrade to Maven 3.8.5 or newer so the workaround is unnecessary
  2. Check the caused-by reflective error and align the maven-resolver Maven version with the one running the build
  3. Ensure no conflicting Maven artifacts are on the classpath
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at independent-projects/bootstrap/maven-resolver/src/main/java/io/quarkus/bootstrap/resolver/maven/BootstrapMavenContext.java:1224 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of quarkusio/quarkus@e1c734241f (2026-09-05). Data as JSON: /api/errors/fa3c4cf1ae8ded6d. Report an issue: GitHub.