Utilizar .jar como serviço no Windows usando o JavaService

2 respostas
G

Olá pessoal.

Só estou abrindo o topico porque já pesquisei aqui nos mais variados topicos sobre o assunto e até o momento não obtive sucesso.

Pois bem, minha dificuldade é a seguinte:

Desenvolvi minha aplicação java no netbeans e criei o meu .jar. (Estou usando Windows 7)

Se eu der 2 cliques no meu .jar a aplicação roda corretamente.

Mas meu objetivo e deixar ela rodando como serviço (acredite, já li bastante sobre o assunto e realmente preciso que seja um serviço).

Então após pesquisar, cheguei no JavaService. Usei o comando dele e consegui criar meu serviço “corretamente”

Registro do windows:

Services.msc erro quando eu vou iniciar o serviço:

Eu acredito que por algum motivo, o serviço não está conseguindo iniciar meu .JAR (suposição)

Alguem sabe me dizer o que pode estar faltando?
Agradeço antecipamente a atenção.

Abraço e bom feriado a todos.

2 Respostas

G

Já tentei adicionar as variaveis de ambiente, mas o problema continua. :frowning:

G

Identifiquei o problema. Vou postar aqui caso alguem precise.
Estava na minha Start Class. Nesse valor é necessario inserir o caminho todo pacote.classe principal.

Agora o serviço inicia, mas minha aplicação não roda (nenhum erro aparece). Alguem poderia me ajudar?

Vou postar o código das minhas classes principais.

public class PrincipalNfe {

    public static void main(String[] args) throws MessagingException{

        Servico servico = new Servico();
        servico.getTimerInstance();
  
    }   
    
}
public class Servico {
    
    Timer tx = null;
    int time=30;
    
    Timer getTimerInstance()
    {
        
        if(tx == null)
        {
            tx = new Timer();
            tx.schedule(new TimerTask()
            {

            @Override
            public void run() {
                   
                    ReadEmails readMail = new ReadEmails();
         

                } catch (MessagingException ex)
                {
                    Logger.getLogger(ReadEmails.class.getName()).log(Level.SEVERE, null, ex);
                }
            }
            }, 0, time*1000);
        }
        return tx;
    }
}

No ReadEmails readMail = new ReadEmails(); eu faço leituras de emails e salvo alguns arquivos.

OBS: Se eu clicar 2x no meu .JAR a aplicação roda corretamente.

Criado 12 de outubro de 2012
Ultima resposta 17 de out. de 2012
Respostas 2
Participantes 1