Orsaker till att Tomcat inte startar


Datum för offentliggörande:8 januari 2021.



INFOMARTION > Orsaker till att Tomcat inte startar

Översikt.

I det här avsnittet beskrivs orsakerna till att Tomcat inte startar och hur du kan åtgärda dem. Detta är orsaken och botemedlet för fall där Tomcat inte startar av någon anledning och ett fel uppstår även om startup.bat eller startup.sh körs. Jag vill förklara detta utifrån Tomcat-versionen 9.0.27.

Innehållsförteckning

  1. Orsaker till att Tomcat inte startar
  2. sammanfattning

1. Orsaker till att Tomcat inte startar

Det finns olika orsaker till att Tomcat inte startar, men i det här avsnittet beskrivs de viktigaste händelserna som kan leda till att Tomcat inte startar.

1-1. JAVA_HOME har inte angetts.

【orsak】

Om varken JAVA_HOME eller JRE_HOME har angetts visas följande fel.

startup.bat


C:\Users\user>C:\apache-tomcat-9.0.27\bin\startup.bat
The JRE_HOME environment variable is not defined correctly
This environment variable is needed to run this program

【Hur man hanterar det】

Ställ in JAVA_HOME eller JRE_HOME i "Systemegenskaper, Avancerade inställningar, Miljövariabler". Om du skriver "echo %JAVA_HOME%", "echo %JRE_HOME%" osv. i kommandotolken kommer du att få följande utdata om du ställer in det på rätt sätt. Som en försiktighetsåtgärd bör du starta om kommandotolken om du ändrar miljövariabler. Miljövariabler läses när kommandotolken startas.

C:\Users\user>echo %JAVA_HOME%
C:\Program Files (x86)\Java\jdk-11

1-2. JAVA-versionen är inte kompatibel med Tomcat.

【orsak】

Tomcat har en Java-version som stöds. Den finns på följande webbplats för Tomcat.

https://tomcat.apache.org/whichversion.html

Tomcat-versionen "9.0.27" skulle till exempel vara "9.0.x" av "Apache Tomcat-versionen" på webbplatsen ovan, som är "8 och senare".

Detta innebär att Java 8 eller senare fungerar.

【Hur man hanterar det】

Skriv om miljövariablerna till motsvarande Java-variabler baserat på följande Tomcat-webbplats.

https://tomcat.apache.org/whichversion.html

1-3. JRE_HOME är aktiverat.

【orsak】

Tomcat är giltigt för "JRE_HOME" om "JRE_HOME" och "JAVA_HOME" är inställda. Även om du tittar på "JAVA_HOME" och ser att Java är kompatibelt med Tomcat fungerar "JRE_HOME", så "JRE_HOME" måste vara Java-kompatibelt med Tomcat.

【Hur man hanterar det】

I "Systemegenskaper, Avancerade inställningar, Miljövariabler" skriver du om Java i JRE_HOME till det Java som motsvarar Tomcat.

1-4. Motstridiga portnummer.

【orsak】

Tomcat startar som standard på port 8080. Om det finns andra program som körs på port 8080 visas följande fel.

Critical [main] org.apache.catalina.util.LifecycleBase.handleSubClassException Failed to initialize component [Connector[HTTP/1.1-8080]]

【Hur man hanterar det】

Ändra porten för Tomcat eller stoppa program som körs med motstridiga portnummer.

Följande kommando visar om det finns en portnummerkonflikt. Delen "8080" bör anpassas till din egen miljö. Om inga inställningar har ändrats är värdet 8080. Om inget är aktiverat returneras inget svar.

※Följande kommandon är Windows-kommandon.

C:\Users\user>netstat -nao | find "8080"
  TCP         0.0.0.0:8080           0.0.0.0:0              LISTENING       5748
  TCP         [::]:8080              [::]:0                 LISTENING       5748
  TCP         [::1]:8080             [::1]:58259            TIME_WAIT       0
  TCP         [::1]:8080             [::1]:58260            TIME_WAIT       0
  TCP         [::1]:8080             [::1]:58261            TIME_WAIT       0

2. sammanfattning

Om Tomcat inte startar kontrollerar du följande fyra punkter.

  • JAVA_HOME har inte angetts.
  • JAVA-versionen är inte kompatibel med Tomcat.
  • JRE_HOME är aktiverat.
  • Motstridiga portnummer.

Om det inte fungerar kan du läsa följande artikel om hur Tomcat startar från början.

Hur aktiveras Tomcat?

Tack för att du tittade på till slutet.




■INFORMATION

Klicka här för att komma till den översta sidan med information.


■PROFILE

Klicka här för en profil.


■Kontaktuppgifter.

För frågor om artikeln, vänligen kontakta oss här.