Veröffentlichen Sie das Spring-Boot-Projekt wie übliche Webprojekte im Tomcat-Container im Tomcat-Container
1. Ändern Sie das Verpackungsformular
Setzen Sie <packaging>war</packaging> in pom.xml
2. Entfernen Sie das eingebettete Tomcat-Plug-In
Suchen Sie den Abhängigkeitsknoten für Spring-Boot-Starter-Web in pom.xml und fügen Sie den folgenden Code hinzu.
<Depepentcy> <gruppe> org.springframework </exklusion> </exklusions> </abhängig>
3.. Fügen Sie Servlet-API-Abhängigkeiten hinzu
Beide folgenden Methoden sind in Ordnung. Wählen Sie eine davon aus
<Depopentcy> <gruppe> javax.servlet </GroupId> <artifactId> javax.servlet-api </artifactId> <version> 3.1.0 </Version> <Scope> Bereitstellung </scope> </abhängig> <abhängigkeit> <gruppen> org. <version> 8.0.36 </version> <scope> bereitgestellt </scope> </abhängig>
4. Ändern Sie die Startklasse und schreiben Sie die Initialisierungsmethode um
Normalerweise verwenden wir die Hauptmethode, um zu starten, und wir haben eine App -Startkurs, der Code lautet wie folgt:
@SpringbootApplicationPublic Class Application {public static void main (String [] args) {SpringApplication.run (application.class, args); }}Wir benötigen eine ähnliche Konfiguration wie web.xml, um den Federkontext zu starten. Fügen Sie eine SpringbootStartApplication -Klasse zu seiner gleichzeitigen Ebene der Anwendungsklasse hinzu, und sein Code lautet wie folgt:
/** * Ändern Sie die Startklasse, Inherit SpringbootServletInitializer und überschreiben Sie die Konfigurationsmethode */Public Class SpringbootStartApplication erweitert SpringbootServletInitializer {@Override Protected SpringApplicationBuilder -Konfiguration (SpringapplicationBuilder). Builder.Sources (application.class); }}5. Paket und Bereitstellung
Geben Sie in dem Projekt Root -Verzeichnis (dh im Verzeichnis pom.xml) ein:
MVN Clean Package reicht aus. Warten Sie, bis die Verpackung abgeschlossen ist. [Info] Erstellung Erfolg erscheint und die Verpackung ist erfolgreich.
Nehmen Sie das Kriegspaket in das Zielverzeichnis in das WebApps -Verzeichnis von Tomcat ein, beginnen Sie mit Tomcat und dekomprimieren und bereitstellen automatisch.
Geben Sie schließlich in den Browser ein
http: // localhost: [Portnummer]/[Paketprojektname]/
Die Veröffentlichung war erfolgreich.
PS: Schauen wir uns die Lösung zum Springboot War Package Tomcat -Startfehler an (die eingebettete Datenbank -Treiberklasse für Datenbanktypen nicht ermitteln kann.
Unser Projekt wurde immer direkt von JAR -Paketen durchgeführt. Gestern sagte mein Kollege, er wolle es in Tomcat leiten, also half ich ihm, lange Zeit ein Vermögen zu machen. Ich werde es Ihnen in dem Artikel vorstellen. Freunde, die es brauchen, können klicken, um es anzuzeigen.
Dann wurde es erfolgreich verpackt und in den lokalen Tomcat eingesetzt und meldete beim Start einen Titelfehler. Nach der Online -Suche wurde gesagt, dass Anmerkungen zur Startkurs hinzugefügt wurden :@SpringBootApplication(exclude={DataSourceAutoConfiguration.class,HibernateJpaAutoConfiguration.class)
Mein persönlicher Test ist ungültig.
Lösung:
Die Annotation für die Startklasse :@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class}) gilt für persönliche Tests.