====== Запуск ====== На текущий момент есть три способа запуска: * с помощью Wrapper Tanuki (**рекоммендуемый способ**, для всех систем, кроме Windows с Java x64) * с помощью Wrapper YAJSW (альтернативный, для всех систем) * как java-приложение, без помощи сторонних программ * из docker-контейнера ===== Запуск demo ===== Выполнить: jroboplc/start.bat ===== Запуск через wrapper tanuki ===== ==== Скачивание ==== Перейти в каталог ''jroboplc/wrapper/'' и выполнить соответствующий скрипт: * download_wrapper_linux.sh (для linux) * download_wrapper_windows.bat (для windows) ==== Скрипты запуска в Linux ==== Скрипты запуска находятся в каталоге jroboplc/ctl.lin: _console - запустить как приложение _install - установить сервис _remove - удалить сервис _restart - перезапустить сервиса _start - запустить сервис _status - показать статус сервиса _stop - остановить сервис Для изменения имени сервиса (если на одной машине планируется несколько инсталляций) использовать параметры ''APP_NAME'' и ''APP_LONG_NAME'' в файле ''jroboplc/ctl.lin/jroboplc''. ==== Скрипты запуска в Windows ==== Скрипты запуска находятся в каталоге jroboplc/ctl.win: _console.bat - запустить как приложение _install.bat - установить сервис _remove.bat - удалить сервис _restart.bat - перезапустить сервиса _start.bat - запустить сервис _status.bat - показать статус сервиса _stop.bat - остановить сервис Для изменения имени сервиса (если на одной машине планируется несколько инсталляций) использовать параметры в файле jroboplc/wrapper/wrapper-conf/wrapper.win.conf: wrapper.name=jroboplc wrapper.displayname=jroboplc wrapper.description=jroboplc ==== Конфигурационные файлы ==== В каталоге ''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.java.additional.1=-Duser.timezone="Etc/GMT-7" Внимание! От версии к версии производитель wrapper'а меняет названия параметров, поэтому могут быть несовпадения. ==== Установка сертификатов в 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 Управление: * В каталогах jroboplc/wrapper/yajsw/bat находятся необходимые скрипты для управления сервисом в windows * Для linux - jroboplc/wrapper/yajsw/bin ===== Запуск как java-приложение ===== Пример строки запуска, если текущий каталог ''jroboplc'': java -jar jar/core/jroboplc.jar -cfg conf -cmd "ansi on|start" ===== Запуск из docker-контейнера ===== https://hub.docker.com/r/promauto/jrobo