Executando um Jar

Olá galera do Guj!!!

Eu sei que este assunto já está por demais explorado neste fórum, entretanto ainda estou com algumas dificuldades. Eu criei um arquivo .jar por meio da clássica operação: Eclipse/botão direito no projeto/Export…/java/Jar File. Antes disso, criei uma pasta META-INF e coloquei dentro o arquivo Manifest.mf com o seguinte texto:

Manifest 1.0
Main-Class: pacote1.pacote2.ClasseMain

Até aí tudo bem, o arquivo .jar é criado sem problemas. Só que pensei que após estes procedimentos, este arquivo já poderia receber um duplo clique para rodar a aplicação, mas ao invés disso o sistema abre a janela de descompactação normal de arquivos zipados.

Gostaria que alguém me dissesse o que ainda preciso fazer para tornar o arquivo .jar um “executável” que rode minha aplicação.

Obrigado.

Olha ,clica com botão direito nele muda abrir com
para jre do java.Nunca tentei isso.

Isto ocorre porque no seu Windows arquivos com extensão JAR estão associados a um programa de descompactação.

Associe arquivos com estensão JAR ao Java.

Para isto: botão direito no arquivo -> Abrir com -> Escolher programa -> Java … (selecione o check “Sempre usar o protgrama selecionado para abrir…”)

Obrigado pela dica, me ajudou bastante!!! :smiley: Mas surgiu um outro probleminha inesperado. É que descobri que quando crio um jar pelo Eclipse, ele cria uma pasta padrão META-INF com um arquivo MANIFEST.MF vazio que toda vez sobrescreve o que eu já havia configurado com o nome do pacote onde se encontra a classe com o método Main. Daí que logicamente falha na execução. Ainda tentei descompactar o jar pra alterar o MANIFEST.MF mas quando tento recompactar com uma extensão .jar ele não é mais visto como tal pelo sistema e fica sendo um zip normal. Alguém sabe como faço para manter minhas configurações do MANIFEST.MF original?

Obrigado.

Bem Amigos!!! :lol:

Apenas complementando meu tópico anterior, após inúmeras tentativas (e o apoio técnico de um ex-colega de faculdade) finalmente consegui criar o famoso Jar File!!! É ótima a sensação de ter um ícone de uma aplicação Java sua no desktop e com um duplo clique: voilá!! Eis que a aplicação surge como um passe de mágica 8). Contudo, descobri um outro problema (espero estar contribuindo positivamente para o enriquecimento do fórum). Minha aplicação inicialmente necessita ler um arquivo txt… Acho melhor dizer logo do que se trata: É o clássico e manjadíssimo Jogo da Forca. Dentro do projeto há um arquivo txt contendo 100 palavras que o programa precisar ler para sortear uma processar o Jogo para que o usuário tente descobrir qual é. Quando executo o programa no Eclipse o arquivo é lido normalmente, mas com o Jar uma excessão é disparada informando que o caminho especificado para o arquivo não foi encontrado. Acredito que seja algum tipo de configuração que tenha que fazer antes de criar o Jar mas não descobri qual é. Agradeço colaborações!!! :smiley:

E aê galera!!! :lol:

Acabou que eu mesmo descobri o X da questão envolvendo arquivos Jar. Após um árduo trabalho de pesquisa na net (principalmente no presente fórum), finalmente consegui resolver o problema. Era o seguinte: Quando estamos rodando um projeto dentro do Eclipse, quando fazemos referência a qualquer elemento externo (arquivos, imagens, sons), a máquina virtual procura o caminho para estes elementos dentro do próprio projeto. Entretanto, quando criamos um Jar, tudo isso fica encapsulado dentro do Jar, mas não importa pq a única coisa que a JVM quer do Jar são os .class, qualquer referência a arquivos ela procura na raiz C e não no projeto. Daí para resolver meu problema, retirei os arquivos e coloquei-os em outro local atualizando as referências no código (“C:/pasta1/pasta2/arquivo.txt”). Desse modo, tanto no Eclipse quanto no Jar, a máquina virtual encontra o caminho e acessa o arquivo. É vivendo e aprendendo não? hauhauhauhaua Achei interessante informar isso a vcs. Pode ser útil um dia, quem sabe?

Valeu pelas dicas!!!