Kako se zažene Apache Tomcat: zagonske skripte, Bootstrap in Catalina


Datum objave:

Posodobljeno:


Tehnični članki > Kako se zažene Apache Tomcat: zagonske skripte, Bootstrap in Catalina

Stanje in varna uporaba v letu 2026

Bistvo: startup.sh oziroma startup.bat preda izvajanje skripti catalina, ki pred zagonom Tomcatovega razreda Bootstrap sestavi okoljske spremenljivke, razredno pot, možnosti JVM in sistemske lastnosti. Upravitelj storitev lahko isti proces JVM zažene z drugim zagonskim ovojem.

Kaj boste izvedeli

  • Kako lahko CATALINA_HOME, CATALINA_BASE, JAVA_HOME in JRE_HOME vplivajo na zagon.
  • Kako argumenti lupinske ali paketne skripte postanejo ukaz Java in nato operacija življenjskega cikla Catalina.
  • Kje pregledati končni ukaz, ne da bi kopirali zastarele možnosti JVM.

Komu je članek namenjen? Skrbnikom, ki odpravljajo težave z zagonskimi skriptami, in razvijalcem, ki želijo razumeti notranji zagon Tomcata.

Opomba za leto 2026: Prikaz temelji na Tomcatu 9.0.27 in Javi 11. Uporabite ga za razumevanje poteka, nato pa preverite skripte, priložene vaši podprti različici Tomcata; notranje možnosti in združljive različice Jave se spreminjajo.

Varnostna opomba: Ukazi in konfiguracijski primeri iz prvotnega članka niso bili znova preizkušeni v sodobnem produkcijskem okolju. Pred uporabo v ločenem preizkusnem okolju preverite podprte različice, izdelajte varnostne kopije ter določite nadzor dostopa in postopek povrnitve.

Uradni viri

Pregled

Tomcat se običajno zažene s paketno ali lupinsko skripto. Spodnji primer za različico 9.0.27 pokaže, kaj zagonska skripta dejansko izvede.

Postopek prenosa te zgodovinske različice je opisan v naslednjem razdelku drugega članka.

Prenos starejše različice Tomcata

Kazalo vsebine

  1. Kako se zažene Tomcat
  2. Povzetek

1. Kako se zažene Tomcat

Tomcat 9.0.27 z OpenJDK 11 se v prikazanem okolju zažene z naslednjim ukazom Java.

"C:\Program Files (x86)\Java\jdk-11\bin\java.exe" -Djava.util.logging.config.file="C:\apache-tomcat-9.0.27\conf\logging.properties" -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dignore.endorsed.dirs="" -classpath "C:\apache-tomcat-9.0.27\bin\bootstrap.jar;C:\apache-tomcat-9.0.27\bin\tomcat-juli.jar" -Dcatalina.base="C:\apache-tomcat-9.0.27" -Dcatalina.home="C:\apache-tomcat-9.0.27" -Djava.io.tmpdir="C:\apache-tomcat-9.0.27\temp" org.apache.catalina.startup.Bootstrap start

Zagonska skripta na koncu izvede zgornji ukaz Java, ki pokliče glavno metodo razreda Bootstrap.

Pomen možnosti "-D" je pojasnjen v naslednjem članku.

Možnost -D v Javi: nastavljanje in branje sistemskih lastnosti

Za razumevanje nastanka končnega ukaza je treba preveriti še vlogo datoteke startup.bat.

1-1. Vsebina datoteke startup.bat

startup.bat preveri okolje za zagon Tomcata in nato z argumentom "start" pokliče catalina.bat. Glavnina obdelave je zato v datoteki catalina.bat.

catalina.bat sestavi končni ukaz iz naslednjih podatkov:

  • izvedljivo datoteko Jave ter imenika CATALINA_HOME in CATALINA_BASE;
  • razredna pot in glavni razred;
  • možnosti Jave, na primer sistemske lastnosti in nastavitve pomnilnika.

Natančna oblika ukaza je odvisna od različic Tomcata in Jave, lokalnih okoljskih spremenljivk ter konfiguracije storitve.

2. Povzetek

Čeprav Tomcat zaženemo s skripto, kot je startup.bat, ta nazadnje izvede enovrstični ukaz Java in tako zažene proces.

Glavni zagonski razred Tomcata je "org.apache.catalina.startup.Bootstrap".

Pri uporabi v novejšem okolju upoštevajte tudi opombe o različicah in varnosti na začetku članka.