Это старая версия документа.


Запуск и wrapper

На текущий момент есть три способа запуска:

  • java, без помощи сторонних программ, только как приложение

Для запуска приложения jroboplc в качестве сервиса используется два варианта с применением сторонних программ:

  • Tanuki Java Service Wrapper (рекоммендуемый для, всех систем, кроме Windows с Java x64)
  • YAJSW (альтернативный, для всех систем)

Запуск через java

Пример строки запуска:

  java -jar jar/core/jroboplc.jar -cfg cfg/wessvr -cmd "ansi on|start"

Запуск через wrapper tanuki

Скачивание и установка

  • Скачать дистрибутив https://wrapper.tanukisoftware.com/doc/english/download.jsp#stable (выбрать Delta Pack, Community). Если нет доступа к сайту, использовать любой online proxy (пример).
  • Распаковать в jroboplc/wrapper и переименовать распакованную папку в wrapper-delta-pack, убрав из имени номер версии.
  • Обновить скрипты запуска (см. далее).

Конфигурационный файл

В каталоге jroboplc/wrapper-conf находятся конфигурационные файлы раздельно для linux и windows:

  • wrapper.lin.conf
  • wrapper.win.conf

Наиболее важные параметры этих файлов:

# для linux
set.JAVA_HOME=/usr/lib/jvm/java-8-oracle
wrapper.java.command=%JAVA_HOME%/bin/java
 
# для windows
wrapper.java.command=java  # при этом java и javac должны быть в PATH системы
 
# для linux и windows
wrapper.java.classpath.1=../lib/wrapper.jar
wrapper.java.classpath.2=../../../jar/core/jroboplc.jar
wrapper.java.library.path.1=../lib
wrapper.app.parameter.1=promauto.jroboplc.core.JRoboPLC
wrapper.app.parameter.2=-plg
wrapper.app.parameter.3=../../../jar/plugin
wrapper.app.parameter.4=-cfg
wrapper.app.parameter.5=../../../conf
wrapper.app.parameter.6=-cmd
wrapper.app.parameter.7="ansi off|start"
wrapper.logfile=../../../log/wrapper
wrapper.console.title=JRoboPLC
 
# для windows
wrapper.name=jroboplc
wrapper.displayname=jroboplc
wrapper.description=jroboplc
wrapper.ntservice.starttype=DEMAND_START   # либо AUTO_START, DELAY_START
 
# опционально
wrapper.disable_forced_shutdown=TRUE

Исходные файл конфигурации находится в архиве wrapper'а:

src/conf/wrapper.conf.in

Внимание! От версии к версии производитель wrapper'а меняет названия параметов, поэтому могут быть несовпадения.

Обновление скриптов запуска в Linux

  • Скопировать файл jroboplc/wrapper/wrapper-delta-pack/src/bin/App.sh.in в jroboplc/ctl.lin с переименованием в jroboplc.
  • Отредактировать скопированный файл, установив следующие параметры:
         APP_NAME="jroboplc"
         APP_LONG_NAME="jroboplc"
         WRAPPER_CMD="../wrapper/wrapper-delta-pack/bin/wrapper"
         WRAPPER_CONF="../wrapper/wrapper-conf/wrapper.lin.conf"
         PIDDIR="/run"
  • Для изменения имени сервиса (если на одной машине планируется несколько инсталляций) использовать параметры APP_NAME и APP_LONG_NAME.

Обновление скриптов запуска в Windows

  • Скопировать файл jroboplc/wrapper/wrapper-delta-pack/src/bin/App.bat.in в jroboplc/ctl.win с переименованием в jroboplc.bat.
  • Отредактировать скопированный файл, установив следующие параметры:
         set _WRAPPER_BASE=wrapper
         set _WRAPPER_DIR=..\wrapper\wrapper-delta-pack\bin
         set _WRAPPER_CONF_DEFAULT="..\..\..\wrapper\wrapper-conf\wrapper.win.conf"
         set _PASS_THROUGH=app_args
  • Для изменения имени сервиса (если на одной машине планируется несколько инсталляций) использовать параметры в файле jroboplc/wrapper/wrapper-conf/wrapper.win.conf:
         wrapper.name=jroboplc
         wrapper.displayname=jroboplc
         wrapper.description=jroboplc

Управление

В каталоге jroboplc/ctl.win находятся необходимые скрипты для управления сервисом в windows:

_console.bat
_install.bat
_remove.bat
_start.bat
_status.bat
_stop.bat

Для linux - в jroboplc/ctl.lin:

_console
_install
_remove
_restart
_start
_status
_stop

Установка сертификатов в windows

Иногда при запуске под windows происходит примерно следующее:

wrapper  | A signature was found in "C:\wrapper-windows-x86-32-3.5.7-pro\bin\wra
pper.exe", but checksum failed: (Errorcode: 0x800b010a) 
A certificate chain could not be built to a trusted root authority. (0x800b010a)
wrapper  |   Signer Certificate:
wrapper  |     Serial Number: 
wrapper  |       00 97 06 fe b5 6e 56 cc cb 66 3a bb 55 a7 a0 e4 76 
wrapper  |     Issuer Name: UTN-USERFirst-Object
wrapper  |     Subject Name: Tanuki Software Ltd.
wrapper  |   TimeStamp Certificate:
wrapper  |     Serial Number: 
wrapper  |       47 8a 8e fb 59 e1 d8 3f 0c e1 42 d2 a2 87 07 be 
wrapper  |     Issuer Name: UTN-USERFirst-Object
wrapper  |     Subject Name: COMODO Time Stamping Signer
wrapper  |     Date of TimeStamp : 2010/12/19 22:32
wrapper  | The Wrapper will shutdown!

Решение проблемы заключается в установке недостающих/просроченных сертификатов, и описано здесь: https://wrapper.tanukisoftware.com/doc/english/troubleshooting.html#9

Если доступ на сайт отсутствует, то использовать online proxy. Копия страницы troubleshooting здесь: http://prom-auto.ru/doc/wrapper/troubleshooting.html

Сертификаты можно скачать здесь: http://prom-auto.ru/download/?dir=dist/wrapper/cert

Запуск через wrapper YAJSW

YAJSW (Yet Another Java Service Wrapper)

Скачивание и установка:

  • Скачать дистрибутив последней версии https://sourceforge.net/projects/yajsw/files/yajsw/
  • Распаковать в jroboplc/wrapper и переименовать распакованную папку в jroboplc/wrapper/yajsw
  • Обновить скрипт запуска (см. далее)

Обновление скриптов запуска:

  • Скопировать файл jroboplc/wrapper/yajsw-conf/wrapper.conf в jroboplc/wrapper/yajsw/conf. Дальнейшие изменения в конфигурации производить в jroboplc/wrapper/yajsw/conf/wrapper.conf
  • Для изменения имени сервиса (если на одной машине планируется несколько инсталляций) использовать параметр appname
  • Для изменения способа запуска сервиса использовать параметр starttype
Внимание! В Windows автоматический старт не работает. Для автоматического запуска использовать режим DEMAND_START и создать ярлык в папке Автозагрузка на файл bat/startService.bat

Для работы yajsw требуется, чтобы команда java выполнялась из любого каталога на любом уровне для всех пользователей. Вариант осуществления: - в windows: добавить javaBin в path системы - в linux: добавить ссылки на java и javac в /usr/bin

Управление: 1. В каталогах jroboplc/wrapper/yajsw/bat находятся необходимые скрипты для управления сервисом в windows 2. Для linux - jroboplc/wrapper/yajsw/bin

doc/jroboplc/run.1587380313.txt.gz · Последние изменения: 2020/04/20 13:58 — denis
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0