Краткий ответ: Это НЕ возможно, по крайней мере, не существует простого способа сделать это, как это обсуждалось на странице, на которую указал Шашанк Кадне.Кроме запуска Tomcat через startup.bat
скрипт и помещения вашего кода (или вызова вашего BAT-файла) в файл setenv.bat
в той же папке, что и startup.bat
.
Если вы пытаетесьчтобы запускать такие приложения, как Jenkins, Artifactory и другие, в одной установке Tomcat - как обсуждалось на этой странице - лучшим способом было бы создать экземпляр сервера Tomcat (также известный как CATALINA_BASE
) для каждого дополнительного приложения.
Таким образом, вы можете использовать каждое приложение в качестве службы Windows и управлять им как службой.
Допущения:
У вас установлена Java на C:\Program Files\Java\jdk-7.0_03
.
Ваш Tomcat установлен на C:\Program Files\Apache\Tomcat 7
.
Вы хотите, например, чтобы сервер Jenkins был на C:\Program Files\My Jenkins
.
Запустите cmd.exe
и выполните следующее:
C:\Users\me> set "JAVA_HOME=C:\Program Files\Java\jdk-7.0_03"
C:\Users\me> set "CATALINA_HOME=C:\Program Files\Apache\Tomcat 7"
C:\Users\me> set "CATALINA_BASE=C:\Program Files\My Jenkins"
C:\Users\me> cd "%CATALINA_BASE%"
C:\Program Files\My Jenkins> mkdir "%CATALINA_BASE%\bin"
C:\...Jenkins> mkdir "%CATALINA_BASE%\conf"
C:\...Jenkins> mkdir "%CATALINA_BASE%\lib"
C:\...Jenkins> mkdir "%CATALINA_BASE%\logs"
C:\...Jenkins> mkdir "%CATALINA_BASE%\temp"
C:\...Jenkins> mkdir "%CATALINA_BASE%\webapps"
C:\...Jenkins> mkdir "%CATALINA_BASE%\work"
C:\...Jenkins> copy "%CATALINA_HOME%\conf\*.*" "%CATALINA_BASE%\conf"
C:\...Jenkins> copy "%CATALINA_HOME%\bin\*.exe" "%CATALINA_BASE%\bin"
C:\...Jenkins> copy "%CATALINA_HOME%\bin\tomcat-juli.jar" "%CATALINA_BASE%\bin"
C:\...Jenkins> cd bin
C:\...Jenkins> ren tomcat7.exe jenkins.exe
C:\...Jenkins> ren tomcat7w.exe jenkinsw.exe
Следующая команда должна быть в одной строке
C:\...Jenkins> jenkins.exe //IS//Jenkins --DisplayName "Jenkins CI"
--Description "Jenkins Continuous Integration Server on Tomcat"
--Startup auto --JavaHome "%JAVA_HOME%" --StartMode jvm --StopMode jvm
--StartClass org.apache.catalina.startup.Bootstrap
--StopClass org.apache.catalina.startup.Bootstrap
--StartParams start --StopParams stop
--Classpath "%CATALINA_HOME%\bin\bootstrap.jar;%CATALINA_BASE%\bin\tomcat-juli.jar;"
--StdOutput auto --StdError auto --LogLevel INFO
--LogPath "%CATALINA_BASE%\logs"
--JvmOptions -Xrs;-Dcatalina.home=%CATALINA_HOME%;-Dcatalina.base=%CATALINA_BASE%;
Теперь у вас должно быть Jenkins CI
служба в окне «Службы».
Разверните веб-приложение Jenkins (файл WAR
) в %CATALINA_BASE%\webapps
.
Шаги, которые я дал выше, исходят «из головы» и не проверены, возможно, я пропустил один или два параметра.Вот почему есть %CATALINA_BASE%\bin\jenkinsw.exe
- запустите его и настройте параметры, пока сервер не заработает.