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

Хорошая библиотека управления технологическими процессами Java

Управление процессами Java, как известно, плохое - в основном из-за недостаточной поддержки классов Java VM/JDK (например, java.lang.Process).

Мне интересно, есть ли там хорошие библиотеки с открытым исходным кодом, которые надежны.

Требования:

  • УПП
  • Процессы запуска/остановки
  • Управление STDIN и STDOUT
  • кросс-платформа (по крайней мере, Linux, Windows, Solaris, HP и IBM в этот порядок)
  • (необязательно) перезагружаемый
  • (желательно) зрелый
4b9b3361

Ответ 1

Java Service Wrapper может быть тем, что вы ищете. Он кросс-платформенный, может быть использован для запуска вещей как службы Windows, захвата ввода-вывода и, как правило, полного управления любым java-приложением. Он очень легкий и хорошо спроектирован. Atlassian использует его для упаковки своих продуктов (Jira, Bamboo и т.д.), Поэтому он тестировался в бою.

Ответ 3

Еще одно требование... поддержка кросс-платформы для убийства осиротевшего процесса. С java.lang.Process (и Apache Commons Exec) невозможно отключить внешние процессы, когда приложение Java делает жесткую остановку (kill -9). Мне бы очень хотелось найти библиотеку, которая может справиться с этой проблемой лучше.

Одним из решений может быть хранение PID в некотором ресурсе на диске, а затем уничтожение процессов при перезапуске приложения Java. Конечно, это зависит от платформы, поэтому хорошая библиотека с кросс-платформой будет фантастической.