Как запускается Apache Tomcat: скрипты запуска, bootstrap и Catalina


Дата публикации:

Обновлено:


Статьи > Как запускается Apache Tomcat: скрипты запуска, bootstrap и Catalina

Статус 2026 года и безопасное использование

Вывод: startup.sh или startup.bat делегирует catalina, который собирает переменные среды, пути к классам, параметры JVM и свойства системы перед запуском класса Tomcat Bootstrap. Менеджер сервисов может вызывать ту же среду выполнения через другую оболочку.

Чему вы научитесь

  • Как CATALINA_HOME, CATALINA_BASE, JAVA_HOME и JRE_HOME влияют на запуск.
  • Как аргументы оболочки или пакета становятся командой Java, а затем операцией жизненного цикла Catalina.
  • Где проверить последнюю команду, не копируя устаревшие флаги JVM.

Для кого: операторы, устраняющие неполадки в оболочках запуска, и разработчики, изучающие внутреннее устройство Tomcat.

Актуальность на 2026 год. Приведенная ниже трассировка команды взята из Tomcat 9.0.27 на Java 11. Используйте ее, чтобы понять ход выполнения, а затем проверьте сценарии, поставляемые с поддерживаемой версией Tomcat; внутренние флаги и совместимые версии Java меняются.

Примечание по безопасности. Команды и примеры конфигурации из исходной статьи не проверялись повторно в современной производственной среде. Перед применением проверьте поддерживаемые версии, резервные копии, контроль доступа и процедуру отката в отдельной тестовой среде.

Официальные первоисточники

Обзор

В статье прослеживается порядок запуска Tomcat. Обычно администратор вызывает startup.bat или startup.sh, однако до готовности сервера эти скрипты подготавливают несколько компонентов окружения. В историческом примере используется Tomcat 9.0.27.

Руководство по загрузке Tomcat показывает, где находился этот архив. Для реальной установки выбирайте поддерживаемую версию.

Оглавление

  1. Как запускается Tomcat
  2. Итоги

1. Как запускается Tomcat

В этом примере для Windows, Tomcat 9.0.27 и OpenJDK 11 скрипты в итоге формируют и выполняют следующую команду 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

Команда формирует classpath и системные свойства, затем вызывает метод main класса org.apache.catalina.startup.Bootstrap с аргументом start.

Параметры программы запуска описаны в руководстве по системным свойствам Java, задаваемым через -D.

Чтобы понять, как получается эта строка, рассмотрим startup.bat.

1-1. Содержимое файла startup.bat

startup.bat проверяет окружение запуска и вызывает catalina.bat с аргументом start. Основная часть команды формируется в catalina.bat.

Скрипты определяют:

  • исполняемый файл Java;
  • каталоги home и base Tomcat;
  • classpath и главный класс;
  • системные свойства и остальные параметры JVM.

Точная команда зависит от версий Tomcat и Java, переменных окружения и конфигурации службы.

2. Итоги

Стартовый скрипт подготавливает окружение Tomcat, а затем запускает Java. В этой версии точкой входа служит org.apache.catalina.startup.Bootstrap. При диагностике сбоя проверяйте скрипты установленной версии и фактическое окружение, а не копируйте историческую команду.

■INFORMATION

Статьи


■PROFILE

Профиль


■Контакты

Контакты