Я оцениваю YAJSW для следующих вариантов использования для окон.Использование JRE_HOME в службе окон YAJSW
- Run Java Application в качестве службы
- Запуск службы с использованием Java , указанной в JRE_HOME переменной пути (% JRE_HOME% \ Bin \ java.exe).
Второй вариант использования очень важен и позволяет использовать 2 гибкости a). для установки любой новой версии JRE (когда когда-либо поддержка Java прекращена/пользователь хочет установить новую JRE) b). Применение не зависит от новой JRE устанавливается пользователем
wrapper.conf
wrapper.working.dir = ${wrapper_home}
wrapper.java.command = ${jre_home}/bin/java
wrapper.java.app.mainclass = com.myapp.launcher.Main
wrapper.java.classpath.1 = ${wrapper_home}/jars/simple.jar
wrapper.java.additional.1 = -Xms3m
#wrapper.java.additional.2 = -Xmx512m
wrapper.ntservice.name = YAJSWSimple
wrapper.ntservice.displayname = YAJSWSimple
wrapper.ntservice.description = YAJSW Simple Service
wrapper.ntservice.starttype = AUTO_START
wrapper.ntservice.interactive = false
wrapper.ntservice.java.command = ${jre_home}/bin/java
Вышеупомянутый конфигурация удовлетворяет Прецедент 1. Я могу старт/стоп и от сервиса «YAJSWSimple» от услуг окон и (bat/startService.bat и bat \ startService.bat)
Я не могу получить второй вариант использования с помощью свойств конфигурации и wrapper.ntservice.java.command
.
Я проверил Путь к исполняемому свойству службы YAJSWSimple в списке сервисов Windows, и он показывает следующее.
C:\Program Files (x86)\Java\jre7\bin\java.exe
-classpath C:\Users\sathish\Softwares\yajsw\yajsw-stable-11.11\wrapper.jar
-Xrs -Dwrapper.service=true
-Dwrapper.working.dir=C:\Users\sathish\Softwares\yajsw\yajsw-stable-11.11
-Djava.net.preferIPv4Stack=true -Djre_home="C:\Program Files (x86)\Java\jre7"
-Dwrapper_home=C:\Users\sathish\Softwares\yajsw\yajsw-stable-11.11\bat\/..
-Dwrapper.java.command="C:\Program Files (x86)\Java\jre7/bin/java"
-Dwrapper.ntservice.java.command="C:\Program Files (x86)\Java\jre7/bin/java"
-Dwrapper.config=C:\Users\sathish\Softwares\yajsw\yajsw-stable-11.11\conf\wrapper.conf
-Dwrapper.additional.1x=-Xrs
-Djna_tmpdir=C:\Users\sathish\AppData\Local\Temp
org.rzo.yajsw.boot.WrapperServiceBooter
служба расширяет путь я указанный в wrapper.java.command
и wrapper.ntservice.java.command
свойств конфигурации.
Чтобы завершить второй случай использования я хочу Путь к исполняемому свойству службы YAJSWSimple быть следующим
%JRE_HOME%/bin\java.exe
-classpath C:\Users\sathish\Softwares\yajsw\yajsw-stable-11.11\wrapper.jar
-Xrs -Dwrapper.service=true
-Dwrapper.working.dir=C:\Users\sathish\Softwares\yajsw\yajsw-stable-11.11 -Djava.net.preferIPv4Stack=true
-Dwrapper_home=C:\Users\sathish\Softwares\yajsw\yajsw-stable-11.11\bat\/.. -Dwrapper.java.command="%JRE_HOME%/bin/java"
-Dwrapper.ntservice.java.command="%JRE_HOME%/bin/java"
-Dwrapper.config=C:\Users\sathish\Softwares\yajsw\yajsw-stable-11.11\conf\wrapper.conf
-Dwrapper.additional.1x=-Xrs
-Djna_tmpdir=C:\Users\sathish\AppData\Local\Temp
org.rzo.yajsw.boot.WrapperServiceBooter
Как это может быть достигнуто в YAJSW так, что установленная служба не влияет обновление JRE?.
Я собираюсь оценить одинаковые варианты использования для машин linux/unix. Надеюсь, что одно и то же решение будет работать и на других платформах.