Inicializando aplicativo junto com o windows

Boa noite a todos,

é possivel via linha de codigo adicionar um aplicativo .jar aos inicializaveis do sistema?

Vlw!

Amigo, boa noite.

Tem sim. Mas é um pouco chato.

Você deverá criar um script “.bat” (se Windows) ou “.sh” se Linux para chamar o “java -jar _nome_da_aplicacao.jar”

Se for no Windows, deverá ser adicionada uma entrada no registro (HKEY_LOCAL_MACHINE/SOFTWARE/MICROSOFT/WINDOWS/CURRENT_VERSION/RUN) chamando este arquivo “.bat”.

Ps: Você também pode adicionar o .bat no local “Iniciar -> Programas -> Inicializar”, mas aí fica visível para o usuário e é simples de remover.

Se for no Linux, depende do gerenciador de Janelas (KDE/Gnome), pois cada um tem entradas diferentes para inicializar aplicativos.

Lembrando que tudo isso depende também de a máquina ter uma JRE instalada e funcionando.

Espero ter ajudado!

Abraço,

Prezado rodrigo.ferreira,

fico extremamente grato pela resposta, mais que completa, vou usar em ambiente windows, tendo em vista uma JRE já instalada!

Abraços e muito obrigado.

Desculpe o encomodo mais teria algum exemplo

que eu possa seguir deste bat?

ou algo em java mesmo?

Vlw.

Se seu Path estiver configurado certinho com o java… pode usar o seguinte

java -jar LOCALIZACAO_DO_SEU_JAR

Galera, meu jar carrega um .properties ao ser iniciado, mais quando eu coloco para iniciar do windows ele não faz isto

alguem teria alguma ideia?

Antes de executar o java -jar NOME_DO_ARQUIVO_JAR
vc tem q executar

cd PASTA_ONDE_ESTA_O_JAR

para trocar o diretório onde vai ser executado

aew duduribeiro,

eue estava passando o diretorio com o .jar sem mudar de pasta

sua dica me ajudou, agora consigo ler os properties.

só que tem um probleminha no fundo fica a tela do CMD

tem como eu fechar ela por comando sem fechar o meu programa?

[quote=WalkMan]aew duduribeiro,

eue estava passando o diretorio com o .jar sem mudar de pasta

sua dica me ajudou, agora consigo ler os properties.

só que tem um probleminha no fundo fica a tela do CMD

tem como eu fechar ela por comando sem fechar o meu programa?[/quote]

Se estiver tudo no windows mesmo e o seu aplicativo não depender de entrada e saída padrão, troca lá o “java.exe” por “javaw.exe” no arquivo batch e execute o seu arquivo batch usando “cmd.exe /c [arquivo batch]”.

Inté.

O aplicativo jar pode ser configurado com um serviço do SO, e assim será inicializado automaticamente.

Ola KWill,

pelo que entendi na minha chamada do bat, no regedit eu coloco

cmd.exe /c C:\Gerenciador\runJava.bat

correto?

e meu bat esta assim

cd C:\Gerenciador javaw -jar gerenciador.jar

com esta opção eu consigo fechar o CMD que fica atraz sim, mais eu queria que ele fechasse sozinho.

vlw.

rdsilio,

não entendi muito bem o que voce quiz dizer,

teria como explicar?

[quote=WalkMan]rdsilio,

não entendi muito bem o que voce quiz dizer,

teria como explicar?[/quote]

Existem formas de alocar o jar como um serviço do windows para que ele inicialize e rode em background, o javaservice é uma dessas possibilidades, dê uma olhada no link:
http://www.jardelmorais.com/?page_id=753

WalkMan faz o seguinte
na area de trabalho
aperte com o botão direito -> novo -> atalho…

vai aparecer uma janela escrito:
Linha de comando
digite o seguinte:

javaw.exe -jar CAMINHO_COMPLETO_ARQUIVO_JAR

pronto…ele criou o atalho…
aperte com o botão direito no atalho

E mude a propriedade INICIAR EM para a pasta onde esta o jar…

quando vc der 2 cliques…ele executa o programa…

Agora é só arrastar o atalho para o Inicializar no menu INICIAR

[]'s

rdsilio vlw pela dica estou estudando esta possibilidade

duduribeiro, não posso fazer isto senão meu patrão me mata ele quer que seja inicializado via registro.

obrigado pela força.

Pelo que sei não é tão fácilzinho assim, a menos que tu use algum wrapper tipo o “YAJSW” ou o velhaco do “srvany” que serve para trecos não-Java.
srvany
YAJSW

Inté.

WalkMan pode ser pelo Tarefas Agendadas do Windows tambem…ele cria um job, e tem a opção de executar toda vez q iniciar o computador, ou quando fizer logon…

Pelo que sei não é tão fácilzinho assim, a menos que tu use algum wrapper tipo o “YAJSW” ou o velhaco do “srvany” que serve para trecos não-Java.
srvany
YAJSW

Inté.[/quote]

Por se tratar de um jar, é necessário algum recurso extra para realizar esse procedimento, como o artigo do javaservice citado.

Tu pode usar a api jRegistryKey e adicionar o programa na inicialização do windows através dos registros, bem simples de usar:

Aqui tem uns exemplos:

http://www.javac.com.br/jc/posts/list/0/21.page#72
http://mirror.transact.net.au/sourceforge/j/project/jr/jregistrykey/manual/original/jreg_key.pdf