Назад | Перейти на главную страницу

Windows: создайте службу для запуска исполняемого файла jar без каких-либо внешних библиотек

У меня есть исполняемый jar-файл весенней загрузки, который можно запустить в любую командную строку, вызвав java -jar filename.jar.

Я хочу создать службу без загрузки каких-либо внешних библиотек для приведенного выше фрагмента кода.

Помогите мне, если есть прямой путь вперед.

Я хочу создать сервис без загрузки каких-либо внешних библиотек

Нет.

Служба Windows по определению представляет собой собственный двоичный файл.

Существует двоичный файл svchost.exe, что означает "узел службы", на котором может размещаться несколько общих Microsoft сервисов, но вы не можете делиться ими со сторонними сервисами. Не поддерживается. Основная причина заключается в том, что сбой или неисправность одной службы может повлиять на все службы в общем экземпляре svchost.exe. И никто не хочет рисковать делиться вашей странной Java-штукой с фундаментальными службами ОС в общем svchost.

[Ссылка]

В старые времена Win2000 существовал двоичный файл srvany.exe, но он настолько старый и дряхлый, что никто не должен его использовать в 2017 году.

Простой поиск в Google говорит мне, что существует такая вещь, как «Java Service Wrapper» или другая вещь под названием «Non-Sucking Service Wrapper»... но это отдельные двоичные файлы сторонних производителей, которые не являются частью Windows и определенно не поддерживаются Microsoft, поэтому ответ на ваш вопрос по-прежнему «Нет».

Суть в том, что вам нужен собственный хостинг-процесс, который не предоставляется Microsoft, для размещения вашей странной службы.