Fehler sind:
%Vor%Ich versuche zu starten, aber nach diesen Ausgaben schaltet es sich ab. Ich habe Spring Initializr verwendet. Ich möchte nur eine kleine REST-API erstellen.
Das ist mein pom.xml
:
das ist application.properteis
:
InternetMovieDatabaseApplication
klasse:
ServletInitializer
klasse:
Dies sind die Fehler, wenn ich ServletInitializer
löschen:
Ich sehe nichts Grelles falsch mit dem, was Sie haben. Ich habe eine App, die ich gleichzeitig als Krug und Krieg in verschiedenen Umgebungen einsetze (sie unterscheiden sich nur durch die Verpackung); Ich habe eine ServletInitializer
Entsprechung zu Ihrer und es funktioniert ohne Problem mit einem primären Unterschied.
Ich verwende eine maven run-Konfiguration mit spring-boot:run
als "Befehlszeilen" -Wert. Damit kann ich nicht mehr tun, als den Pom zu ändern, um Jar oder Krieg zu reflektieren, zu rennen und zu gehen. Ich hatte Probleme, wenn ich hin und her wechsle und eine Konfiguration verwende, die main
in der App-Klasse aufruft. Zum Beispiel habe ich nur zum Spaß eine Instanz der App mit jar packaging und main
ausgeführt. Würde nicht einmal starten. Dies ist nur, nachdem es jar verpackt und gestartet wurde mit der Maven-Konfiguration, die ich oben erwähnt.
Ich würde empfehlen, mit der Erstellung dieser Maven-Run-Konfiguration zu beginnen und zu sehen, was die Ergebnisse sind. Hier ist der Weg, es in Intellij zu tun, so dass Sie die Befehlszeilenschnittstelle nicht verwenden müssen.
+
in der oberen linken Ecke. spring-boot:run
dem Eintrag "Befehlszeile" hinzu. Ich bin kein Eclipse / sts-Benutzer, aber ich bin mir sicher, dass es einen ähnlichen Weg gibt.
Offensichtlich werden Sie Ihre Anwendung als war
packen, das ist in Ordnung, aber das Problem ist, dass Sie Ihre Anwendung über die Methode main
in der Klasse InternetMovieDatabaseApplication
ausführen. Stattdessen sollten Sie Ihre Anwendung entweder auf einem eigenständigen Servlet-Container wie Tomcat oder Jetty bereitstellen oder die Anwendung mit dem Befehl mvn spring-boot:run
ausführen .
Wenn das Packen Ihrer Anwendung als war
archive keine strenge Anforderung ist, empfehle ich make jar, not war . Um dies zu tun, entferne zuerst packaging
in deinem pom.xml
:
Entfernen Sie dann die spring-boot-starter-tomcat
Abhängigkeit:
Und schließlich entfernen Sie die Klasse ServletInitializer
und führen Sie die Methode main
in Ihrer Klasse InternetMovieDatabaseApplication
aus.
Tags und Links java spring spring-boot