Criação de Jar

tenho a seguinte estrutura de diretório:
c:\teste
c:\teste\lib
c:\teste\classes
c:\teste\META-INF

em c:\teste estou executando:

jar -cvfm teste.jar ./META-INF/MANIFEST.MF ./classes/*.* ./lib/*.*

meu MANIFEST:

Manifest-Version: 1.0
Created-By: 1.4 (Ltda)
Main-Class: ../classes/Menu
Class-Path: ../lib/hsqldb_1-7-2-RC2.jar

quando clico duas vezes no jar ele diz que não acha a Main Class,
porque?

de uma olhada aqui e compare com o que vc ta fazendo.

[]'s

li toda a matéria, mas não descobri o problema ainda

Estrutura:
c:\teste
c:\teste\lib
c:\teste\classes
c:\teste\META-INF

em c:\teste execute:

jar -cvfm teste.jar c:\teste\META-INF\MANIFEST.MF c:\teste\classes\*.*

MANIFEST:

Manifest-Version: 1.0
Created-By: gui
Main-Class: classes.Menu
Class-Path: lib/hsqldb_1-7-2-RC2.jar

E no mesmo diretorio do seu jar deve existir a pasta lib
com o jar hsqldb_1-7-2-RC2.jar

Valeu? até mais… :wink:

não vai de jeito nenhum, o que mais pode ser, alguma coisa na classe Main, apenas mono um JFrame com menu

não vai de jeito nenhum, o que mais pode ser, alguma coisa na classe Main, apenas monto um JFrame com menu

se Eu tirar do arquivo jar o diretório classes(deixando no raiz) e colocar no manifest Main-Class: Menu , funciona, porque ele não acha a Main-Class em subdiretório?

Desculpe! erro meu! :frowning:

o correto do MANIFEST seria

Manifest-Version: 1.0
Created-By: gui
Main-Class: teste.classes.Menu
Class-Path: lib/hsqldb_1-7-2-RC2.jar

*Nao esqueça que a ultima linha do MANIFEST deve ser em branco!
Valeu? até mais… :smiley:

desculpe mas não foi

ai…to como mesmo problema…não consigo de jeito nenhum rodar o .jar… fica dizendo o tempo todo que não acha a Main-class… dois dias que estou tentando e nada… por favor…ajuda…
ja li uns 40 tópicos e não consigo resolver o problema

Bom vamos lar espero poder ajudar

o arquivo manifes dever ser colocado ja unidade c:

ele deve ter as seguintes linhas, tem quer ser na primeira linha do arquivo de texto ok;

Main-Class: NomeDodiretorio.nomedaClass
Name: NomeDiretorio.NomedaClasse.class
Java-Bean:True

ok main criado … criar o jarrrrr…

jar cfm NomedoJar.jar nomedomainifest.txt nomeDodiretorio*.*

depois so clicka e pronto

ja tentou executar com

java -jar arquivo.jar ao inves de clicar 2 vezes ?

E ai… rapaz… fiz o q vcs disseram…mas naaaaaadaa… :frowning: só dá q não acha a classe do main… :(… tentei pelo DOS sim… sendo q antes só dizia que não achava o main…agora ele diz “wrong name”…da um erro do java.lang… noclassdefound… :frowning: só quero ver q além é esse… :frowning: tentei de tudo e nada… :frowning: se alguém tem mais uma luz… por favor… :stuck_out_tongue:

posta o erro q da no DOS …

Com certeza voce esta fazendo referencias erradas no MANIFEST … :smiley:

Bom eu denovo meu msn e fabiofeber@hotmail.com estou conectado sempre apos a meia noite o no fim de semana ok

bom ao criar seus arquivos .class e importante que vc declare a instruçao
package no inicio da classe e ao compilar o programa o compilador
criarar os diretorios automaticamente o manifeste

Main-Class: nomedoDiretorio.NomedaClass

exemplo o nome todo e o nome da class porque foi declarado a instruçao
package na sua classe ok

exc:

package diretorio;

sua classe agora se chama :

diretorio.minhaColasse.class

ok