Arquivo .jar (como gerar e executar)

6 respostas
J

Li outros tópicos sobre esse assunto mas não tirei minha dúvida.
Usando o EXE4j eu consigo fazer executáveis Java tranquilamente. Mas Estou tentando fazer um arquivo .jar executável e não venho obtendo sucesso. Usei a seguinte dica:

Criando uma aplicação
jar cvfm NomeDoArquivo.jar MANIFEST.MF UmaClasse.class OutraClasse.class
Explicação:
m: incluir o arquivo de manifestação
MANIFEST.MF = o MANIFEST.MF é um arquivo que contém a informação de qual classe se encontra
o método main. O conteúdo desse arquivo é o seguinte:

Manifest-Version: 1.0
Class-Path: classes
Created-By: 1.4.1_01 (Sun Microsystems Inc.)
Main-Class: UmaClasse

Até gerou o arquivo .jar mas se clico nele, no Windows, dá um erro referente ao arquivo Manifest.mf
Será que ele só vai funcionar no prompt (-jar NomeDoArquivo.jar) ?
Estou usando o J2SDK1.4.2_05, alguém tem alguma dica de como geram um .jar que execute normalmente?

6 Respostas

ramilani12

Tente assim:
jar cvfm NomeDoArquivo.jar MANIFEST.MF *.class
Vc configurou as variaveis de ambiente certinho ?

j_chist:
Li outros tópicos sobre esse assunto mas não tirei minha dúvida.
Usando o EXE4j eu consigo fazer executáveis Java tranquilamente. Mas Estou tentando fazer um arquivo .jar executável e não venho obtendo sucesso. Usei a seguinte dica:

Criando uma aplicação
jar cvfm NomeDoArquivo.jar MANIFEST.MF UmaClasse.class OutraClasse.class
Explicação:
m: incluir o arquivo de manifestação
MANIFEST.MF = o MANIFEST.MF é um arquivo que contém a informação de qual classe se encontra
o método main. O conteúdo desse arquivo é o seguinte:

Manifest-Version: 1.0
Class-Path: classes
Created-By: 1.4.1_01 (Sun Microsystems Inc.)
Main-Class: UmaClasse

Até gerou o arquivo .jar mas se clico nele, no Windows, dá um erro referente ao arquivo Manifest.mf
Será que ele só vai funcionar no prompt (-jar NomeDoArquivo.jar) ?
Estou usando o J2SDK1.4.2_05, alguém tem alguma dica de como geram um .jar que execute normalmente?

ateubh

Eu acho que o erro está no seu arquivo manifest… favor copiá-lo aqui no forum.

A

Não sei se estou certo, mas acho que o arquivo MANIFEST.Mf tem que ficar dentro do diretório META-INF (posso estar falando besteira) quanto à sua classe, ela não está dentro de nenhum package? se estiver, é preciso representar o caminho completo no atributo main-class.

Abraço,

Armando

P

Pessoal montei um arquivo .jar no Netbeans usando a opção build, contudo quando vou executa-lo usando java -jar meuarquivo.jar dá o seguinte erro:

Exception in class "main" java.lang.NoClassDefFoundError: controlewebbloqueados /Main

Já configurei o meu classpath, ele está da seguinte maneira:

.;JAVA_HOME
.;C:\Arquivos de programas\Java\jdk1.5.0_06\lib\comm.jar
.;C:\Arquivos de programas\Java\jdk1.5.0_06\commapi\samples\BlackBox\BlackBox.jar
.;C:\Arquivos de programas\Java\jdk1.5.0_06\jexcelapi
.;C:\Arquivos de programas\Java\jdk1.5.0_06\rxtx-2.1-7-bins-r2
.;C:\ControleWeb\lib
.;C:\ControleWeb\ControleWebBloqueados.jar

Alguém tem alguma dica?

J

Obrigada pelas dicas vou testá-las. Mas onde eu encontro o arquivo Manifest.mf aqui no site?
As classes não estão num pacote não.

P

Eu uso o NetBeans para desenvolver em Java e no meu caso o arquivo manifest.mf fica dentro da pasta do meu projeto.

Criado 11 de junho de 2006
Ultima resposta 16 de jun. de 2006
Respostas 6
Participantes 5