У меня есть требование установить tomcat в качестве службы Windows и запустить службу во время установки.Использование действия «Install Service» для install4j
Первоначально я создал файл install.bat & startService.bat и выполнил эти командные файлы во время установки с помощью действия «запустить исполняемый файл или пакетный файл» install4j.
Для этого мне пришлось сохранить командный файл в каталоге установки.
Поэтому мне было предложено использовать «Install Service» & «start service» действие installa4j, так что командный файл не требуется в месте установки.
Может кто-нибудь мне помочь, я добавил файл партии ниже?
@echo off
setlocal
set "DATA_PATH=%~dp0data"
set "CATALINA_HOME=%~dp0tomcat"
set "CATALINA_BASE=%CATALINA_BASE%"
set "JRE_HOME=%~dp0jre"
set "EXECUTABLE=%CATALINA_HOME%\bin\sampleService.exe"
set SERVICE_NAME=sampleService
set DISPLAYNAME=sample Service
echo Installing the service '%SERVICE_NAME%'
echo Using CATALINA_HOME: "%CATALINA_HOME%"
echo Using CATALINA_BASE: "%CATALINA_HOME%"
echo Using JAVA_HOME: "%JAVA_HOME%"
echo Using JRE_HOME: "%JRE_HOME%"
set "JVM=%JRE_HOME%\bin\server\jvm.dll"
if exist "%JVM%" goto foundJvm
set "JVM=%JRE_HOME%\bin\client\jvm.dll"
if exist "%JVM%" goto foundJvm
set JVM=auto
:foundJvm
echo Using JVM: "%JVM%"
set "CLASSPATH=%CATALINA_HOME%\bin\bootstrap.jar;
%CATALINA_BASE%\bin\tomcat-juli.jar"
if not "%CATALINA_HOME%" == "%CATALINA_BASE%"
set "CLASSPATH=%CLASSPATH%;%CATALINA_HOME%\bin\tomcat-juli.jar"
"%EXECUTABLE%" //IS//%SERVICE_NAME%^
--Description "tomcat 8"^
--DisplayName "%DISPLAYNAME%"^
--Install "%EXECUTABLE%"^
--Startup auto^
--LogPath "%CATALINA_BASE%\logs"^
--StdOutput auto^
--StdError auto^
--Classpath "%CLASSPATH%"^
--Jvm "%JVM%"^
--StartMode jvm^
--StopMode jvm^
--StartPath "%CATALINA_HOME%"^
--StopPath "%CATALINA_HOME%"^
--StartClass org.apache.catalina.startup.Bootstrap^
--StopClass org.apache.catalina.startup.Bootstrap^
--StartParams start^
--StopParams stop^
--JvmOptions
"-Dconceptor.datapath=%DATA_PATH%;-Dcatalina.home=%CATALINA_HOME%;-Dcatalina.base=%CATALINA_BASE%;-Djava.endorsed.dirs=%CATALINA_HOME%\endorsed;-Djava.io.tmpdir=%CATALINA_BASE%\temp;-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager;-Djava.util.logging.config.file=%CATALINA_BASE%\conf\logging.properties"^
--JvmMs 1024^
--JvmMx 2048
if not errorlevel 1 goto installed
echo Failed installing '%DISPLAYNAME%' service
goto end
:installed
echo The service '%DISPLAYNAME%' has been installed.
:end
cd "%CURRENT_DIR%"
pause