Error Knowledge Base Maven NO_PLUGIN_FOUND_FOR_PREFIX

No plugin found for prefix

Maven cannot map that plugin prefix to a real plugin artifact, usually because the plugin is undeclared or missing from configured plugin repositories.

What Maven Could Not Find

Maven cannot map that plugin prefix to a real plugin artifact, usually because the plugin is undeclared or missing from configured plugin repositories.

Manual plugin resolution checks

Confirm you can reach Maven Central (or your mirror) from this machine by resolving any known plugin with mvn -q -DskipTests help:effective-pom, search your pom.xml for a plugin declaration that matches the goal you're trying to run under <build><plugins>, and if the plugin is not in Central, confirm you have a <pluginRepositories> entry (or a mirror) that contains it.

Confirm the exact artifact you asked for

Before you retry, confirm the exact name, version or tag, namespace, and index or registry this environment is supposed to use. Most fixes here are about pointing at the right thing.

Try running the goal using full coordinates:mvn groupId:artifactId:version:goal (this bypasses prefix mapping).

Preferably, add the plugin to your pom.xml under <build><plugins> (and set the plugin version explicitly).

If the plugin is hosted outside Maven Central, configure the correct <pluginRepositories> (or a mirror in settings.xml).

If you use a corporate mirror/repository manager, confirm it proxies plugin repositories and that the plugin is not blocked by policy.

Retry the command, and if needed, run with debug logs:mvn -X <prefix>:<goal>

Why It Was Not Found

Usually this comes down to the plugin is not declared in the project and Maven cannot resolve it by prefix from configured plugin groups, the plugin repository is not configured (or is blocked by proxy/auth/TLS issues), or you are offline or using a mirror that does not proxy the plugin's upstream repository.

Prove the Source Resolves Correctly Now

Re-run the original <prefix>:<goal> command and confirm Maven resolves and runs the plugin, and confirm the plugin artifact exists under ~/.m2/repository/.

Typical Output

[ERROR] No plugin found for prefix 'spring-boot' in the current project and in the plugin groups [org.apache.maven.plugins, org.codehaus.mojo] available from the repositories [local (~/.m2/repository), central (https://repo.maven.apache.org/maven2)]

How plugin prefix resolution works

This is the part worth understanding if the quick fix did not hold. It explains what Maven is trying to do at the moment the error appears.

When you run mvn <prefix>:<goal>, Maven must resolve the prefix to a plugin artifact (groupId:artifactId).

Maven searches known plugin groups and repositories for plugin metadata that declares that prefix. If Maven cannot find the plugin in any configured plugin repositories, prefix resolution fails.

Avoid Version and Source Drift

To prevent this, declare build plugins in pom.xml and pin plugin versions (avoid relying on prefix auto-discovery), use a repository manager mirror that includes plugin repositories and caches them for CI stability, and keep settings.xml consistent across environments so plugin resolution does not vary by machine.

Docs and source code

github.com/apache/maven/blob/maven-3.9.11/maven-core/src/main/java/org/apache/maven/plugin/prefix/internal/DefaultPluginPrefixResolver.java

Maven throws NoPluginFoundForPrefixException when it cannot resolve a plugin prefix from available plugin groups/repositories. - GitHub

if (requests.isEmpty()) {
    continue;
}

throw new NoPluginFoundForPrefixException(prefix, session, pluginGroups, requests);

Need help or found a mistake? Contact RepoFlow support for questions.

Join our mailing list