quarkusio/quarkus · error · MojoExecutionException

Failed to initialize Maven artifact resolver

Error message

Failed to initialize Maven artifact resolver

What it means

Same pattern as [410]: building the MavenArtifactResolver for the create-jbang goal failed and is wrapped in MojoExecutionException. The resolver is needed to download the Quarkus BOM and extension catalog used to scaffold the JBang project.

Source

Thrown at devtools/maven/src/main/java/io/quarkus/maven/CreateJBangMojo.java:103

            Files.createDirectories(outputDirectory.toPath());
        } catch (IOException e) {
            throw new MojoExecutionException("Could not create directory " + outputDirectory, e);
        }

        File projectRoot = outputDirectory;
        final Path projectDirPath = projectRoot.toPath();

        final MavenArtifactResolver mvn;
        try {
            mvn = MavenArtifactResolver.builder()
                    .setRepositorySystem(repoSystem)
                    .setRepositorySystemSession(
                            getLog().isDebugEnabled() ? repoSession : MojoUtils.muteTransferListener(repoSession))
                    .setRemoteRepositories(repos)
                    .setRemoteRepositoryManager(remoteRepoManager)
                    .build();
        } catch (Exception e) {
            throw new MojoExecutionException("Failed to initialize Maven artifact resolver", e);
        }

        final MessageWriter log = new MojoMessageWriter(getLog());
        ExtensionCatalog catalog;
        try {
            catalog = CreateProjectMojo.resolveExtensionsCatalog(this, bomGroupId, bomArtifactId, bomVersion, null,
                    QuarkusProjectHelper.getCatalogResolver(mvn, log), mvn, log);
        } catch (RegistryResolutionException e) {
            throw new MojoExecutionException("Failed to resolve Quarkus extension catalog", e);
        }

        final List<ResourceLoader> codestartsResourceLoader = codestartLoadersBuilder(log)
                .catalog(catalog)
                .artifactResolver(mvn)
                .build();
        final CreateJBangProject createJBangProject = new CreateJBangProject(QuarkusProject.of(projectDirPath, catalog,
                codestartsResourceLoader, log, BuildTool.MAVEN, new JavaVersion(javaVersion)))
                .extensions(extensions)

View on GitHub (pinned to e1c734241f)

Solutions

  1. Rerun with -X and read the 'Caused by' to identify the actual resolver failure
  2. Verify network access to the configured repositories (proxy/VPN/firewall)
  3. Fix invalid mirrors/proxies/localRepository in ~/.m2/settings.xml
  4. Check quarkus.platform.group-id/artifact-id/version properties are valid for your Quarkus version

Example fix

// before
mvn quarkus:create-jbang  // fails behind corporate proxy
// after
// set proxy in ~/.m2/settings.xml, then
mvn -X quarkus:create-jbang
Defensive patterns

Strategy: validation

Validate before calling

// verify repository reachability before running
java.net.http.HttpClient c = java.net.http.HttpClient.newHttpClient();
var resp = c.send(java.net.http.HttpRequest.newBuilder(java.net.URI.create("https://repo.maven.apache.org/maven2/")).method("HEAD", java.net.http.HttpRequest.BodyPublishers.noBody()).build(), java.net.http.HttpResponse.BodyHandlers.discarding());
if (resp.statusCode() >= 400) throw new IllegalStateException("Maven Central unreachable: " + resp.statusCode());

Try / catch

try {
    mvn quarkus:create-jbang ...
} catch (MojoExecutionException e) {
    if (e.getMessage().contains("Failed to initialize Maven artifact resolver")) {
        Throwable root = e; while (root.getCause() != null) root = root.getCause();
        logger.error("Resolver init failed: {} — check settings.xml mirrors/proxies", root.getMessage());
    }
}

Prevention

When it happens

Trigger: MavenArtifactResolver.builder()...build() (with remote repos/remoteRepositoryManager, transfer listener muted unless debug) throws any Exception in CreateJBangMojo.execute().

Common situations: Invalid quarkus.platform.* coordinates misconfiguring repositories, settings.xml proxy/mirror failures, unreachable Maven Central, corrupted local repository metadata.

Related errors


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