Oorzaken van het niet starten van Tomcat


Datum van publicatie:8 januari 2021.



INFOMARTION > Oorzaken van het niet starten van Tomcat

Overzicht.

Deze sectie beschrijft de oorzaken van het niet starten van Tomcat en hoe daarmee om te gaan. Dit is de oorzaak en remedie voor gevallen waarin Tomcat om een of andere reden niet start en er een fout optreedt, zelfs als startup.bat of startup.sh wordt uitgevoerd. Ik wil dit graag uitleggen aan de hand van de Tomcat versie '9.0.27'.

Inhoudsopgave

  1. Oorzaken van het niet starten van Tomcat
  2. samenvatting

1. Oorzaken van het niet starten van Tomcat

Er zijn verschillende oorzaken voor het niet starten van Tomcat, maar deze sectie beschrijft de belangrijkste gebeurtenissen die ervoor kunnen zorgen dat Tomcat niet start.

1-1. JAVA_HOME is niet ingesteld.

【oorzaak】

Als noch JAVA_HOME noch JRE_HOME is ingesteld, wordt de volgende fout weergegeven.

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

【Hoe er mee om te gaan】

Stel JAVA_HOME of JRE_HOME in via 'Systeemeigenschappen, Geavanceerde instellingen, Omgevingsvariabelen'. Als het correct is ingesteld, zal het typen van 'echo %JAVA_HOME%', 'echo %JRE_HOME%', enz. op de opdrachtprompt de volgende uitvoer opleveren. Start uit voorzorg de opdrachtprompt opnieuw op als u omgevingsvariabelen wijzigt. Omgevingsvariabelen worden gelezen wanneer de opdrachtprompt wordt gestart.

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

1-2. JAVA versie is niet compatibel met Tomcat.

【oorzaak】

Tomcat heeft een ondersteunde Java versie. Het is te vinden op de volgende Tomcat website.

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

Bijvoorbeeld, de Tomcat versie "9.0.27" zou "9.0.x" zijn van de "Apache Tomcat Versie" op de bovenstaande site, die "8 en later" is.

Dit betekent dat het instellen van Java 8 of later zal werken.

【Hoe er mee om te gaan】

Herschrijf de omgevingsvariabelen naar de overeenkomstige Java gebaseerd op de volgende Tomcat website.

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

1-3. JRE_HOME is ingeschakeld.

【oorzaak】

Tomcat is geldig voor "JRE_HOME" als "JRE_HOME" en "JAVA_HOME" zijn ingesteld. Zelfs als je naar "JAVA_HOME" kijkt en ziet dat Java compatibel is met Tomcat, zal "JRE_HOME" werken, dus "JRE_HOME" moet Java-compatibel zijn met Tomcat.

【Hoe er mee om te gaan】

Herschrijf in 'Systeemeigenschappen, Geavanceerde instellingen, Omgevingsvariabelen' Java in JRE_HOME naar de Java die overeenkomt met Tomcat.

1-4. Tegenstrijdige poortnummers.

【oorzaak】

Tomcat start standaard op poort 8080. Als er andere toepassingen op poort 8080 draaien, wordt de volgende fout weergegeven.

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

【Hoe er mee om te gaan】

Verander de poort van Tomcat of stop applicaties met conflicterende poortnummers die draaien.

Het volgende commando zal u vertellen of er een poortnummerconflict is. Het "8080" gedeelte moet worden aangepast aan uw eigen omgeving. Als er geen instellingen zijn gewijzigd, is de waarde 8080. Als er niets geactiveerd is, wordt er geen antwoord teruggestuurd.

※De volgende commando's zijn Windows.

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

Als Tomcat niet start, controleer dan de volgende vier punten.

  • JAVA_HOME is niet ingesteld.
  • JAVA versie is niet compatibel met Tomcat.
  • JRE_HOME is ingeschakeld.
  • Tegenstrijdige poortnummers.

Als dat niet werkt, raadpleeg dan het volgende artikel over hoe Tomcat in de eerste plaats opstart.

Hoe wordt Tomcat geactiveerd?

Bedankt voor het kijken tot het einde.