Como configurar uma implementação do Daemon como serviço do Windows

Não encontrei nenhum exemplo muito bom (na verdade, não encontrei um único exemplo) sobre como registrar uma classe que implementa o métodoorg.apache.commons.daemon.Daemon interface como serviço do Windows.

Preciso registrar esta implementação usando procrun? Mas parece que não há sentido em implementar a interface, pois o procrun pode registrar qualquer programa como serviço do Windows.

Além disso, parece haver um docu-bug na página procrun (http://commons.apache.org/proper/commons-daemon/procrun.html):

A descrição do--StartMethod estados do parâmetro:

Nota: no modo jvm, o método start não deve retornar até que o método stop seja chamado.

Mas mais abaixo na página na seção "Usando Procrun no modo jvm":

Observe que o início do serviço de manipulação de métodos deve criar e iniciar um encadeamento separado para executar o processamento e, em seguida, retornar. Os métodos de início e parada são chamados de diferentes threads.

Estou lendo isso errado ou isso é um pouco conflitante? E qual seria o comportamento correto de um método estático de início (String [] args)?

Cumprimentos

questionAnswers(1)

yourAnswerToTheQuestion