Maven - nie znaleziono wtyczki dla przedrostka „spring-boot” w bieżącym projekcie i grupach wtyczek


84

Próbuję zbudować projekt Springboot, który zbudowałem za pomocą pakietu Spring Tools Suite. Podczas wykonywania pojawia się następujący błąd$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`

Oto moja wtyczka 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>

Wypróbowałem wtyczkę jhipster powyżej i bez zmian w błędzie.


Napotkałem ten sam problem na Macu. Udało mi się to naprawić, zmieniając domyślną
— Javę

Odpowiedzi:


44

Jeśli używasz Spring Boot do aplikacji, zapominasz o dodaniu

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

może powodować ten problem, a także brakować tych wierszy

<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
co jeśli jest to moduł potomny i faktycznie ma on rodzica?
— Dylan Czenski,

6
@DylanCzenski Per inna odpowiedź niżej, spróbuj:mvn org.springframework.boot:spring-boot-maven-plugin:run
— mblakesley

@DylanCzenski Mam taką samą sytuację i nie mogę dodać rodzica wymienionego w odpowiedzi.
— CA Arefe

171

Jeśli używasz

mvn spring-boot:run

z wiersza poleceń upewnij się, że jesteś w katalogu zawierającym plik pom.xml . W przeciwnym razie napotkasz nie znaleziono wtyczki dla przedrostka „spring-boot” w bieżącym projekcie i błąd grup wtyczek .


Nie moje rozwiązanie.
— Maihan Nijat

2
Ta odpowiedź mi pomaga!
— Max Peng

1
Poprawna odpowiedź. Miałem do czynienia z tym problemem podczas korzystania z Google Cloud Shell podczas tworzenia aplikacji Spring Boot z Kotlin. Ta odpowiedź pomaga mi rozwiązać wspomniany problem.
— Yasir Ali

Dzięki @Voicu pomogło to nawet kwarkusowi
— Jalaj Chawla

25

Jeśli nie chcesz używać

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

jako rodzic POM możesz używać rozszerzenia

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

polecenie zamiast.


1
To jest to, czego szukałem! Dzięki!
— mblakesley,

13

Literówki są możliwą przyczyną tego błędu.

Koniecznie sprawdź napisałeś spring-boot, a nie na przykład springbootalbo sprint-bootalbo springbokalbo cokolwiek.

Sprawdź również zamówienie: używaj, spring-boot:runa nie run:spring-boot.


12

Możesz dodać następujące elementy do swojego pom i spróbować skompilować

   <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
Dlaczego tak się dzieje? Jestem w sieci korporacyjnej, która nie zezwala na dostęp do zewnętrznych repozytoriów, nasz wewnętrzny serwer lustrzany wydaje się mieć odpowiednie pliki JAR, ale co sprawiłoby, że były złe?
— Will Buck


5

Użyj mvn spring-boot:run. Brak mvn sprint-boot:run błędów podczas pisania.


1
Istnieją inne odpowiedzi, które zawierają pytanie PO, i zostały one opublikowane jakiś czas temu. Publikując odpowiedź, zobacz: Jak napisać dobrą odpowiedź? , upewnij się, że dodałeś nowe rozwiązanie lub znacznie lepsze wyjaśnienie, szczególnie w przypadku odpowiedzi na starsze pytania.
— help-info.de

1
Dziwne jest to, że ta odpowiedź mi pomogła: p
— Thamaraiselvam,

Haha, zagłosowałem za tą odpowiedzią, ponieważ miałem też literówkę.
— Alba Hoo

Cieszę się, że pomogłem :)
— Juan Silupú Maza

4

Dodanie spring-boot-maven-plugin do kompilacji rozwiązało problem w moim przypadku

<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>  

Taka była moja sytuacja. Wcześniej działało, potem skomentowałem tę część (myśląc o skomentowaniu czegoś innego) i nagle moja aplikacja przestała działać.
— OscarRyz,

2

Upewnij się, że pom.xml istnieje w katalogu, używając polecenia mvn spring-boot: run. Nie ma potrzeby dodawania niczego w pliku pom.xml.


To znaczy ... błąd dosłownie mówi, że przy wykonywaniu tego polecenia czegoś brakuje, stąd trzeba coś do POMA dopisać.
— hopsinat

Dla mnie nic nie dodałem, po prostu musiałem znaleźć się w folderze projektu na terminalu przed wykonaniem polecenia.
— Ikhiloya Imokhai

0

Zamiast używać pełnej nazwy wtyczki (z groupId), jak opisano w odpowiedzi Bartosza , możesz dodać

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

do pliku .m2 / settings.xml.


-1

W moim przypadku moim zmiennym środowiskiem maven było M2_HOME, więc zmieniłem na MAVEN_HOME i działałem.


2
Witamy w Stack Overflow, @ vfranca9. Być może jakieś wyjaśnienie wyjaśniłoby twoją odpowiedź. Przez „w moim przypadku” masz na myśli, że otrzymałeś ten sam komunikat o błędzie w odpowiedzi na to samo polecenie?
— Degan,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.