Eu gostaria que voces me dessem alguma dica de como gerar arquivos jar, pois a maioria das apostilas e tutorias que eu pego sobre java nesse assunto são incompletos.
Valeu!
Eu gostaria que voces me dessem alguma dica de como gerar arquivos jar, pois a maioria das apostilas e tutorias que eu pego sobre java nesse assunto são incompletos.
Valeu!
guardian, da uma lida neste pequeno tutorial que eu já havia feito a algum tempo…vou colocar aqui e vc da uma olhada…
1 - Vc sempre cria arquivos jar com os .class da sua aplicação, esqueça os .java
2 - Crie uma pasta e coloque todos os arquivos .class da sua aplicação, se tiver um arquivo, coloque ele.
3 - Depois disso entre no Bloco de Notas e crie um arquivo chamado man.txt com o seguinte conteúdo:
Main-Class: <nome da classe que contem o static void main>
4 - Salve o arquivo, lembrando que deve ser salvo na mesma pasta que contem o .class e lembrando que na frente do Main-Class no arquivo man.txt vc nao deve colocar a extensão .class e sim somente o nome do arquivo .class.
5 - Apos isso vc deve ir ate o Prompt do MS-DOS e entra na pasta que vc criou para rodar o jar, vamos usar a pasta teste como exemplo, então seu prompt ficaria assim:
c:/>teste>
6 - Então vc iria dar a seguinte linha de comando, lembrando que o que esta em <> deve ser substituido pelas especificações de sua aplicação:
c:/>teste>jar cvfm <nome do programa>.jar man.txt *.class <pastas que contenham algo que vc use em sua aplicação>
7 - Apos isso, será criado um arquivo .jar em sua pasta, no caso do exemplo, na pasta teste, dai eh soh dar dois cliques no arquivo e pronto ou senão vá ate o pormpt do dos e faça assim:
c:/>teste>java -jar <nome do programa>.jar
Obs: Esse tutorial eh valido somente para windows, não sei se funciona no Linux.
Espero que este pequeno tutorial lhe ajude, lembrando que JAR não é um executavel e sim um arquivo compactado com os .class.
Ate mais…
richardpeder…
To achando estranho… eu criei o man.txt… do jeitinho que vc falou… e o mesmo comando no prompt para criar o .JAR
detalhe… criou tudo certinho… mais ele naum roda… dentro do .JAR o Manifest.mf… tá sem o nome do meu .class. o static void main… e mesmo eu acrescentando… naum funciona… dá uma olhada no Manifest.mf
Main-Class : FilmesPrincipal
Manifest-Version: 1.0
Created-By: 1.4.1_01 (Sun Microsystems Inc.)
Naum to entendendo…
esse Manifest.mf ele cria quando vc cria o jar??
Era pra funcionar cara, fiz isso muitas vezes, ate decorei os procedimentos…nao é possivel nao estar funcionando…qual o erro de prompt do MS_DOS que ele dá??
ate mais…
Esse é o erro…
e ele cria sim…
Failed to load Main-Class manifest attribute from
Filmes.jar
Procure por “jar” aqui no forum ( utilize o “Pesquisar” ). Isso ja foi bastante discutido, e duvidas como essas ja foram respondidas ( provavelmente ). Dessa maneira, evitamos topicos duplicados e voce acha a solucao mais rapidamente!
Rafael
richardpeder;
Eu tentei fazer e deu este erro:
Failed to load Main-Class manifest attribute from <nome do programa>
Por que deu esse erro?
Tem alguma possibilidade de ser o meu .CLASS???
tb pode ser minha máquina…
Se alguem se interessar em tentar… vou disponibilizar os meus .CLASS nesse endereço…
guardian e own_prison:
Quando vcs criarem o manifest, apos colocar a linha que referencia a main class, clique duas vezes no <ENTER>, ou seja, de duas linhas e depois salve o arquivo…acho que depois disso funciona…
ate mais…qualquer erro, poste aqui…
richardpeder;
Deu certo do jeito que você disse.
Eu pulei duas linhas do Main-Class.
Agora só que o arquivo só é executado pelo prompt, pois tentei clicar duas vezes sobre ele e não aconteceu nada.
Valeu pelas dicas !
imagina guardian, estamos aqui pra isso!! :lol:
Em relação a não rodar pelo windows, não sei o que pode ser, bom, quando vc roda pelo prompt, dá algum erro??
ate mais…
Eu tentei um monte de coisas e nada deu certo… ai eu tive um estalo aki… se vc abrir o Jar… vc vai ver que o manifest.mf… está dentro de uma pasta chamada meta-inf… entaum é só vc criar um manifest.mf… e colocar detro dessa mesma pasta… foi assim que eu fiz funcionar… 8) 8)
Mesmo assim galera valeu pela ajuda…
ai pessoal…sou novo aki no forum…e vejam…eu olhei acho q uns 40 topicos sobre os jars… fiz tudo q o pessoal aki falou…mas continua dando problemas o meu jar…sempre da o “Couldnt find main class”… ou senão… dis q deu problema no load(esse q deu no kra ai)… estou esperando respostas…ja q faz dois dias q venho tentando criar isso…valeu pessoal
ei pessoal… por favor…me ajudem…eu sei q é chato…falar do mesmo assunto o tempo todo… mas é q preciso criar esse jar…com uma certa pressa… e há 2 dias que tento e nada… por favor… se puderem… já tentei mt aki…todos os tópicos e nada dele achar a main-class…
Main-Class : FilmesPrincipal
Manifest-Version: 1.0
Created-By: 1.4.1_01 (Sun Microsystems Inc.)
Quando eu digito C:\teste>jar cvfm Calendario.jar man.txt *.class… no arquivo META-INF/MANIFEST.MF esta incompleto… ele falta :
Main-Class: TesteCalendar…
Porque que quando eu executo o comando pra montar um jar ele monta faltando… sendo que a classe que contem o main esta no diretorio…
também estou tendo problemas:
o arquivo man.txt contem e está salvo na pasta TESTE:
Main-Class: Sist_Biblioteca
no prompt quando eu digito:
c:\teste>jar cvfm programa.jar man.txt*.class
ele me retorna ‘jar’ não é reconhecido como um comando interno ou externo, um programa operável ou um arquivo em lotes.
Alguma ajuda??? vlw…
Já resolvi, faltou colocar o caminho completo, erro de iniciante
C:\Arquivos de programas\Java\jdk1.6.0_02\bin\jar
Olha o que acontece no meu
javac: invalid flag: Class-Path:
Usage: javac <options> <source files>
use -help for a list of possible options
FALHA NA CONSTRUÇÃO (tempo total: 0 segundos)
meu manifest esta assim =>
Manifest-Version: 1.0
Main-Class: br.com.Programa.Index.Login
Class-Path: mysql-connector-java-5.1.7-bin.jar
X-COMMENT: Main-Class will be added automatically by build
O que estou fazendo de errado dei uma lida aqui nesse post mas nao consegui resolver ainda sou iniciante primeira vez que faço isso alguem pode me ajudar?
pow eu tbm to travadasso nesse manifest
ja coloquei td ai veio
ate a minha data de aniversario (iauhsiuh zuera) e nem foi
to procurando na net agora…ta meio tenso