Pergunta

Estou tentando criar uma cópia local do validador nu html .Posso fazer com que ele seja executado no console, mas não tive êxito em fazê-lo funcionar em segundo plano (ou como um serviço).
Não tenho experiência em configurar Java Servlets, então estou procurando algumas dicas para converter o aplicativo Jetty na linha de comando em um serviço.

A máquina que estou usando tem um servidor Ubuntu 10.04.

Não tenho certeza se devo perguntar isso aqui ou no serverfault.Posso movê-lo para lá, se precisar.

Foi útil?

Solução

O script build.py tem um parâmetro 'script' que cria um arquivo run-validator.sh que executa o validador,

python build/build.py script

Irá gerar o script para você. Você pode inspecionar este script para ver o comando java simples.

Ainda não consegui fazer isso funcionar em segundo plano,

Algo a ver com stdin methinks (a maneira como o validador sai quando você pressiona o retorno), mas ainda não consegui descobrir!

Outras dicas

Os comentários são difíceis de usar para o código, então aqui está uma resposta para executar o validador em segundo plano:

cd /<path-to>/checker 
nohup build/build.py --control-port=8889 run > /dev/null 2>&1 &

observe a opção control-port que resolve os problemas de stdin.8889 é uma porta tcp que supostamente interrompe o validador quando ele obtém uma conexão.não foi capaz de verificar isso, mas você pode querer considerar o bloqueio da porta.

Para resolver o problema de saída do validador apresentado por Alan, implantei uma combinação da resposta de Alan e Dennis.

Primeiro, criei o arquivo run-validator.sh usando:

cd /<path-to>/checker
python build/build.py script

A seguir, por sugestão de Dennis, usei nohup para executar o script em segundo plano:

nohup ./run-validator.sh &

Isso está funcionando muito bem para nós em um servidor CentOS 5 e não tem nenhum dos problemas stdin que Alex relatou.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top