{"record":{"id":"28e5cb8b33d8903b","repo":"quarkusio/quarkus","slug":"failed-to-resolve-a","errorCode":null,"errorMessage":"Failed to resolve ${a}","messagePattern":"Failed to resolve (.+?)","errorType":"exception","errorClass":"MojoExecutionException","httpStatus":null,"severity":"error","filePath":"independent-projects/extension-maven-plugin/src/main/java/io/quarkus/maven/ExtensionDescriptorMojo.java","lineNumber":1430,"sourceCode":"                        .setRepositorySystemSession(session)\n                        .setRemoteRepositories(repos)\n                        .setPreferPomsFromWorkspace(true)\n                        .setCurrentProject(workspaceProvider.origin()));\n                resolver = new MavenArtifactResolver(ctx);\n            } catch (BootstrapMavenException e) {\n                throw new MojoExecutionException(\"Failed to initialize Maven artifact resolver\", e);\n            }\n        }\n        return resolver;\n    }\n\n    private File resolve(org.eclipse.aether.artifact.Artifact a) throws MojoExecutionException {\n        try {\n            return resolver().resolve(a).getArtifact().getFile();\n        } catch (MojoExecutionException e) {\n            throw e;\n        } catch (Exception e) {\n            throw new MojoExecutionException(\"Failed to resolve \" + a, e);\n        }\n    }\n}\n","sourceCodeStart":1412,"sourceCodeEnd":1434,"githubUrl":"https://github.com/quarkusio/quarkus/blob/e1c734241f34c7919086ceb4c9262b4a58f6de44/independent-projects/extension-maven-plugin/src/main/java/io/quarkus/maven/ExtensionDescriptorMojo.java#L1412-L1434","documentation":"ExtensionDescriptorMojo.resolve() resolves a Maven artifact through the MavenArtifactResolver to obtain its file. Any resolution failure other than a MojoExecutionException (e.g. ArtifactNotFoundException or repository I/O errors) is wrapped in this MojoExecutionException naming the artifact coordinates.","triggerScenarios":"Calling resolve(Artifact) during the extension-descriptor goal when the artifact (often a dependency of the extension being processed) cannot be downloaded from the configured remote repositories.","commonSituations":"Artifact missing from remote repos, network/proxy outage, typo in dependency coordinates, snapshot artifact purged from the repo, or offline mode with the artifact not in the local repo.","solutions":["Check the artifact coordinates in the error message exist and are correct in the project dependencies","Run `mvn -U` to force re-download of snapshots/releases and check network/proxy access to the repository","Verify the artifact is deployed/published to the configured remote repository","Run `mvn install` on the local module that produces the missing artifact (often a sibling Quarkus module)"],"exampleFix":"// before: depending on a never-installed sibling module\n<dependency><groupId>io.quarkus</groupId><artifactId>quarkus-myext</artifactId><version>999-SNAPSHOT</version></dependency>\n// after: build/install the module first\nmvn install -f extensions/myext/","handlingStrategy":"validation","validationCode":"// verify the artifact exists before the goal runs\nmvn dependency:get -Dartifact=groupId:artifactId:version","typeGuard":null,"tryCatchPattern":"try { return resolver().resolve(a).getArtifact().getFile(); } catch (Exception e) { throw new MojoExecutionException(\"Failed to resolve \" + a + \" — check it exists in the configured repos\", e); }","preventionTips":["Run `mvn dependency:get` to pre-verify coordinates","Build/install sibling modules before running the plugin","Check `-U` and proxy settings when snapshots 404","Verify CI has network access to the artifact repository"],"tags":["maven","dependency-resolution","network"],"backgroundTag":"artifact-not-found","analyzedSha":"e1c734241f34c7919086ceb4c9262b4a58f6de44","analyzedAt":"2026-09-05T17:01:29.979Z","contentChangedAt":"2026-09-05T17:01:29.979Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}