Detailliertes Tutorial zur Installation von Spring-Boot-Anwendungen auf Linux-Systemen

Detailliertes Tutorial zur Installation von Spring-Boot-Anwendungen auf Linux-Systemen

Unix/Linux-Dienste

systemd-Dienste

Betriebsablauf

1. CentOS7-virtuelle Maschine mit installiertem JDK

Bitte beachten Sie, dass Sie die Linux-Version des JDK nicht direkt über einen direkten Link wie wget herunterladen können, da sonst die Dekomprimierung fehlschlägt. Sie sollten die ursprüngliche offizielle Website öffnen, auf „Zustimmen zur Lizenz“ klicken und dann auf „Herunterladen“ klicken (diese Methode ist sehr langsam). Eine bessere Möglichkeit besteht darin, die Adresse der Download-Seite in Thunder zu kopieren, die Download-Seite über Thunder zu öffnen und nach Zustimmung zur Lizenz auf „Herunterladen“ zu klicken.

Nach dem Herunterladen entpacken und konfigurieren Sie die Umgebungsvariablen

tar -zxvf jdk1.8.0_211.jar.gz

Konfiguration der Umgebungsvariablen: Fügen Sie der Datei /etc/profile Folgendes hinzu

exportiere JAVA_HOME=/var/java/jdk1.8.0_211
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

Führen Sie nach dem Hinzufügen der Umgebungsvariablen die Quelle /etc/profile aus, damit die Umgebungsvariablen wirksam werden.

2. Bereiten Sie die zu installierende Spring Boot-Anwendung vor

2.1 Achten Sie für eine erfolgreiche Installation besonders auf die Konfiguration der relevanten Plug-Ins in der POM-Datei. Das richtige Beispiel lautet wie folgt:

<Bauen>
  <Plugins>
   <Plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>Spring-Boot-Maven-Plugin</artifactId>
    <Konfiguration>
     <mainClass>com.itsherman.dcm.Anwendung</mainClass>
     <ausführbar>wahr</ausführbar>
    </Konfiguration>
    <Hinrichtungen>
     <Ausführung>
      <Ziele>
       <goal>neu verpacken</goal>
      </Ziele>
     </Ausführung>
    </Ausführungen>
   </plugin>
  </plugins>
 </bauen>

Wenn Sie nur spring-boot-maven-plugin deklarieren und die nachfolgenden Konfigurationselemente ignorieren, besteht die Möglichkeit, dass das von Ihnen erstellte Paket (JAR) nach der Portierung nicht erfolgreich gestartet werden kann. Meldet einen Fehler, dass das Hauptmenüattribut nicht gefunden werden kann.

Das obige Problem liegt hauptsächlich daran, dass das erstellte ausführbare JAR-Paket einen Ordner META_INF enthält. Die Datei MANIFEST.MF in diesem Ordner beschreibt die Hauptinformationen des Pakets und die Zeile Main-Class fehlt. Die Lösung besteht darin, dass wir es manuell hinzufügen oder der obigen Konfiguration folgen können, insbesondere darf das Ausführungskonfigurationselement nicht fehlen, und dann mvn install erneut ausführen. Nachdem Sie das JAR-Paket neu generiert haben, öffnen Sie es mit dem Tool Winrar und überprüfen Sie die Informationen der Datei MANIFEST.MF.

Die allgemeinen vollständigen Dateiinformationen lauten wie folgt:

Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Gebaut von: Sherman
Start-Klasse: com.itsherman.dcm.Application
Spring-Boot-Klassen: BOOT-INF/Klassen/
Spring-Boot-Lib: BOOT-INF/lib/
Spring-Boot-Version: 2.1.5.RELEASE
Erstellt von: Apache Maven 3.6.0
Build-Jdk: 1.8.0_172
Hauptklasse: org.springframework.boot.loader.JarLauncher

Anschließend können Sie versuchen, es lokal mit dem Befehl java -jar myapp.jar auszuführen.

3. Verwenden Sie Dateimigrationstools wie xftp, um das JAR-Paket in Schritt [1] auf die virtuelle Maschine zu migrieren.

4. Schreiben Sie die Dienstkonfigurationsdatei unter /etc/systemd/system auf die virtuelle Maschine. Das Referenzbeispiel lautet wie folgt:

[Einheit]
Beschreibung=myapp
Nach=syslog.target
[Service]
Benutzer=hadoop
ExecStart=/var/java/jdk1.8.0_211/bin/java -jar /home/hadoop/myapp/dev-manager.jar
SuccessExitStatus=143
[Installieren]
WantedBy=Mehrbenutzer.Ziel

•Beschreibung: Beschreibung des Programms
•Benutzer: Systembenutzer
•ExecStart: Der Befehl zum Starten des Programms

Nach dem Schreiben der Konfigurationsdatei speichern und beenden

Starten Sie den Dienst

Aktualisieren der Dienstkonfigurationsinformationen

systemctl daemon-reload

Starten des Dienstes

systemctl start myapp.service

Dienst beim Booten starten

systemctl enable myapp.service

Anzeigen von Servicestatusinformationen

systemctl status myapp.service

6. Testen

Öffnen Sie den Browser und greifen Sie auf den Dienst zu

Zusammenfassen

Oben finden Sie ein ausführliches Tutorial zur Installation von Spring-Boot-Anwendungen auf Linux-Systemen. Ich hoffe, es wird Ihnen hilfreich sein. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!

Das könnte Sie auch interessieren:
  • So verpacken und implementieren Sie Springboot auf einem Linux-Server
  • So führen Sie Springboot im Hintergrund von Linux aus
  • Methoden und Schritte zum Bereitstellen eines Springboot-Projekts unter Linux
  • Bereitstellen des Spring Boot-Programms unter Linux
  • Detaillierte Erläuterung der Spring Boot Linux-Startmethode

<<:  Detaillierte Erläuterung der Verwendung von Gulp.js, einem leistungsstarken Tool für die Front-End-Aufgabenerstellung

>>:  Vorteile und Prinzipien der MySQL-Replikation im Detail erklärt

Artikel empfehlen

Erstellen einer KVM-Virtualisierungsplattform auf CentOS7 (drei Möglichkeiten)

KVM steht für Kernel-based Virtual Machine und is...

So verwenden Sie vw+rem für das mobile Layout

Verwenden Sie immer noch das flexible Rem-Layout?...

Mysql-Timeline-Daten, um die ersten drei Daten desselben Tages zu erhalten

Erstellen von Tabellendaten CREATE TABLE `praise_...

So verwenden Sie den Linux-Befehl whatis

01. Befehlsübersicht Der Befehl whatis sucht in e...

Detaillierte Erklärung des Sandbox-Mechanismus von Vue3

Inhaltsverzeichnis Vorwort Browser kompilierte Ve...

Vue3-Kompilierungsprozess - Quellcodeanalyse

Vorwort: Vue3 ist schon seit langem verfügbar. Vo...

Lösung zum Verhindern des Caching in Seiten

Lösung: Fügen Sie in <head> den folgenden Co...

So lösen Sie das Problem des verstümmelten MySQL-Inserts

Problembeschreibung: Beim Einfügen chinesischer Z...

Optimierte Aufzeichnung der Verwendung von IN-Datenvolumen in Mysql

Die MySQL-Versionsnummer ist 5.7.28. Tabelle A ha...