Подтвердить что ты не робот

Лучший способ запуска приложения Java в качестве демона * nix или службы Windows?

Я ищу лучший метод для запуска приложения Java как демон * NIX или службы Windows. Я просмотрел Java Wrapper, Apache Commons project ' jsvc ' и проект Apache Commons "procrun" . Пока что Java Service Wrapper выглядит как лучший вариант... но мне интересно, есть ли там какие-либо другие "лицензированные продукты с открытым исходным кодом".

4b9b3361

Ответ 1

У меня был большой успех с помощью Java Service Wrapper. Я не смотрел на других, но основными сильными сторонами ServiceWrapper являются:

  • Отличная поддержка x-платформы - я использовал ее в Windows и Linux, и нашел, что это легко на
  • Solid Documentation - Документы понятны и точны, с отличными примерами
  • Поддержка Deep per-platform. В системе управления окнами есть некоторые уникальные функции, которые отлично поддерживаются оболочкой сервиса (без перезапуска). И в Windows вы даже увидите свое имя приложения в списке процессов вместо "java.exe".
  • Соответствие стандартам. В отличие от многих сценариев инициализации Java Java скрипты для обертки сервиса, как правило, соответствуют стандартам LSB. Это может оказаться очень важным, если вы когда-либо хотите управления высокой доступности из чего-то вроде Linux Heartbeat/HA.

Во всяком случае, только мои 2 цента...:)

Ответ 2

Другим вариантом является WinRun4J. Это только окна, но есть некоторые полезные функции:

  • Поддержка 32-разрядной и 64-разрядной версий.
  • API для доступа к журналу событий и реестру
  • Может регистрировать услугу в зависимости от других сервисов (например, serviceA и serviceB должны запускаться до ServiceC)

Его также дружественный с открытым исходным кодом (CPL), поэтому никаких ограничений на использование.

(полное раскрытие: я работаю над этим проектом).

Ответ 3

Существуют ли какие-либо специальные атрибуты, которые необходимо применять (например, управление ресурсами, управляемыми ОС), которые вам необходимо поддерживать? В противном случае для Unix вы сможете демонтировать приложение, написав соответствующий init.d script и автоматически запустив приложение.