Maven: no se encontró ningún complemento para el prefijo 'spring-boot' en el proyecto actual y en los grupos de complementos


81

Estoy tratando de construir un proyecto springboot que construí con Spring Tools Suite. Me sale el siguiente error cuando ejecuto$mvn spring-boot:run

Downloading: https://repo.maven.apache.org/maven2/org/codehaus/mojo/maven-metadata.xml
Downloading: https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-metadata.xml
Downloaded: https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-metadata.xml (13 KB at 14.0 KB/sec)
Downloaded: https://repo.maven.apache.org/maven2/org/codehaus/mojo/maven-metadata.xml (20 KB at 21.8 KB/sec)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.032 s
[INFO] Finished at: 2015-06-15T17:46:50-04:00
[INFO] Final Memory: 11M/123M
[INFO] ------------------------------------------------------------------------
[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 (/Users/admin/.m2/repository), central (https://repo.maven.apache.org/maven2)] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1]     http://cwiki.apache.org/confluence/display/MAVEN/NoPluginFoundForPrefixException`

Aquí está mi complemento pom.xml

    <build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <arguments>
                    <argument>--spring.profiles.active=dev</argument>
                </arguments>
            </configuration>
        </plugin>
    </plugins>
</build>

Probé el complemento jhipster anterior y no hubo cambios en el error.


Enfrenté el mismo problema en Mac. Pude solucionarlo cambiando el java predeterminado de 13 a 8.
— Lakshmikant Deshpande

Respuestas:


42

Si está utilizando Spring Boot para la aplicación, olvidándose de agregar

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.2.7.RELEASE</version>
 </parent>

puede causar este problema, además de perder estas líneas

<repositories>
    <repository>
        <id>spring-releases</id>
        <url>https://repo.spring.io/libs-release</url>
    </repository>
</repositories>
<pluginRepositories>
    <pluginRepository>
        <id>spring-releases</id>
        <url>https://repo.spring.io/libs-release</url>
    </pluginRepository>
</pluginRepositories>

9
¿Qué pasa si este es un módulo hijo y en realidad tiene un padre?
— Dylan Czenski

4
@DylanCzenski Por otra respuesta más abajo, intente:mvn org.springframework.boot:spring-boot-maven-plugin:run
— mblakesley

@DylanCzenski Tengo la misma situación y no puedo agregar al padre mencionado en la respuesta.
— Deadpool

168

Si está ejecutando el

mvn spring-boot:run

desde la línea de comandos, asegúrese de estar en el directorio que contiene el archivo pom.xml . De lo contrario, se encontrará con el complemento No encontrado para el prefijo 'spring-boot' en el proyecto actual y en el error de grupos de complementos .


No es mi solucion.
— Maihan Nijat

2
¡Esta respuesta me ayuda!
— Max Peng

1
Respuesta correcta. Me enfrentaba a este problema mientras usaba Google Cloud Shell mientras creaba la aplicación Spring Boot con Kotlin. Esta respuesta me ayuda a resolver el problema mencionado.
— Yasir Ali

Gracias @Voicu, esto ayudó incluso para quarkus
— Jalaj Chawla

24

Si no quieres usar

<parent>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-parent</artifactId>
  <version>(...)</version>
</parent>

como POM padre, puede utilizar el

mvn org.springframework.boot:spring-boot-maven-plugin:run

comando en su lugar.


1
¡Esto es lo que estaba buscando! ¡Gracias!
— mblakesley

12

Es posible que desee agregar lo siguiente a su pom e intentar compilar

   <repositories>
        <repository>
            <id>spring-snapshots</id>
            <url>http://repo.spring.io/libs-snapshot</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>spring-snapshots</id>
            <url>http://repo.spring.io/libs-snapshot</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>

4
¿Por qué estaría pasando esto? Estoy en una red corporativa que no permite acceder a repositorios externos, nuestro espejo interno parece tener los JAR correctos, pero ¿qué los hubiera hecho malos?
— Will Buck

11

Los errores tipográficos son una posible razón de este error.

Asegúrese de verificar que usted escribió spring-boot, y no por ejemplo, springbooto sprint-boot, o springbok, o lo que sea.

También verifique el pedido: usar spring-boot:runy no run:spring-boot.



5

Utilice mvn spring-boot:run. Sin mvn sprint-boot:run error de escritura.


1
Hay otras respuestas que proporcionan la pregunta del OP y se publicaron hace algún tiempo. Cuando publique una respuesta, consulte: ¿Cómo escribo una buena respuesta? , asegúrese de agregar una nueva solución o una explicación sustancialmente mejor, especialmente cuando responda preguntas anteriores.
— help-info.de

1
Lo extraño es que esta respuesta me ayuda: p
— Thamaraiselvam

Jaja, he votado a favor de esta respuesta porque también tuve un error tipográfico.
— Alba Hoo

Me alegro de haber ayudado :)
— Juan Silupú Maza

4

Agregar spring-boot-maven-plugin en la compilación lo resolvió en mi caso

<build>
    <finalName>mysample-web</finalName>
    <plugins>
    <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <dependencies>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>springloaded</artifactId>
                <version>1.2.1.RELEASE</version>
            </dependency>
        </dependencies>
    </plugin>
    </plugins>
</build>  

Esta era mi situación. Estaba funcionando antes, luego comenté esa parte (pensando en comentar algo más) y de repente mi aplicación dejó de funcionar.
— OscarRyz

2

Asegúrese de que pom.xml exista en el directorio, cuando use el comando mvn spring-boot: run. No es necesario agregar nada en el archivo pom.xml.


Quiero decir ... el error dice literalmente que falta algo al ejecutar este comando, por lo tanto, se debe agregar algo al POM.
— hopsinat

Para mí, no agregué nada, solo necesitaba estar en la carpeta del proyecto en la terminal antes de ejecutar el comando.
— Ikhiloya Imokhai

0

En lugar de usar el nombre completo del complemento (con groupId) como se describe en la respuesta de Bartosz , puede agregar

<pluginGroups>
    <pluginGroup>org.springframework.boot</pluginGroup>
</pluginGroups>

a su .m2 / settings.xml.


-1

En mi caso, mi entorno de variable maven era M2_HOME, así que cambié a MAVEN_HOME y funcioné.


2
Bienvenido a Stack Overflow, @ vfranca9. Quizás alguna explicación aclare su respuesta. Con "en mi caso", ¿quiere decir que estaba recibiendo el mismo mensaje de error en respuesta al mismo comando?
— Degan
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.