Linux – Executar jar na inicialização do sistema. Jar como serviço. (How to make a jar file run on startup)

java linux tux

Uma maneira fácil de se fazer isso é utilizar o SysVInit.

1 – Você deve criar um script de start e stop para sua aplicação. No exemplo vamos utilizar o diretorio /opt/:

Start Script: /opt/server/myapp-start.sh
Stop Script: /opt/server/myapp-stop.sh

Cada arquivo dará as instruções necessárias para executar e parar o aplicativo.
O conteudo é bem simples, exemplo de como ligar:

#!/bin/bash

java -jar /opt/server/myapp.jar

Para parar, pode ser algo como:

#!/bin/bash
# Grabs and kill a process from the pidlist that has the word myapp

pid=`ps aux | grep myapp | awk '{print $2}'`
kill -9 $pid

2 – Crie um script ‘myscript’ e coloque-o em /etc/init.d.

‘/etc/init.d/myscript’ conteudo:

#!/bin/bash
# MyApp
#
# description: bla bla

case $1 in
start)
/bin/bash /opt/server/myapp-start.sh
;;
stop)
/bin/bash /opt/server/myapp-stop.sh
;;
restart)
/bin/bash /opt/server/myapp-stop.sh
/bin/bash /opt/server/myapp-start.sh
;;
esac
exit 0

3 – Coloque o script para iniciar com o sistema usando o SysV. Basta executar o seguinte comando como root:

update-rc.d myapp defaults

Lembre-se de dar permissão de execução para os 3 scripts criados. (start,stop,myscript);

 

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s