Gerar .jar (erro1 ao fazer, erro 2 fat jar)

20 respostas
pedroroxd

Pessoal, fui gerar o .jar aqui que nem fazia antigamente, e não deu certo…
O erro (que não aparece quando mando abrir o .jar gerado) é dado porque o .jar do miglayout não ta vindo junto.
Fui no configure Build Path, e fiz isso (selecionei o miglayout, igual fazia antigamente, com o mysqlconnector):

O projet tá assim:

Na hora de gerar o .jar, o miglayout.jar não aparece alí --> Que nem aparecia com o mysqlconnector:

Então, na hora que gera o jar, não aparece a pasta lib com o jar do miglayout, e não aparece referência do jar no manifest… Axei meio estranho
Bom, quero ajuda para fazer isso…


E outra, não é a primeira vez que acontece comigo, por isso fui configurar o fat jar no meu Eclipse Galileo-Jee.

  1. Fechei o eclipse
  2. Baixei o net.sf.fjep.fatjar_0.0.31, extrai, saiu uma pasta plugins com o net.sf.fjep.fatjar_0.0.31.jar dentro. Peguei ele e colokei na pasta plugins do eclipse…
  3. Depois fui com o cmd até a pasta do eclipse, digitei eclipse-clean.
  4. Ele abriu o eclipse automaticamente, mas na hora de fazer o Export do projeto, o fat jar não aparece
    [color=red]Porque?[/color]

20 Respostas

pedroroxd

Alguem tem a solução para um desses problemas?

  1. Gerar o .jar do meu projeto com o .jar do miglayout dentro
  2. Instalar o fat jar
pedroroxd

Bom pessoal, já passaram 2 dias e a dúvida ainda não foi resolvida ainda…
Se alguem puder me ajudar agradeço.

“up”

D

Eu aprendi por conta própria a gerar .jar, levei um tempo para fazer isto no eclipse.

==============================================

Esqueci de falar. Não tava bem da cabeça na hora.

Tenta na imagem abaixo, incluir o arquivo SRE system libary[JAVA SE-1.6]

Quem sabe ele não é gerado porque não tem a biblioteca

pedroroxd

Tá, mas o que estou fazendo de errado ali?

lina

Oi,

Até onde eu sei, essa configuração feita no eclipse serve somente para executar dentro do eclipse!

Então, você precisa criar um jar normal (como sempre faz) e roda-lo da seguinte forma (se não estiver configurado seu classpath):

java -cp <caminho>/miglayout-3.7.1-swing.jar meujar.jar

Tenta assim e vamos ver o que acontece.

Tchauzin!

pedroroxd

Deu isso:

C:\Documents and Settings\Owner>
java -cp C:\Documents and Settings\Owner\Desktop\Pépi\Programação\Java\Workspace Eclipse\ProjetoProcura\lib\miglayout-3.7.1-swing.jar meujar.jar

[color=red]C:\Documents and Settings\Owner>java -cp C:\Documents and Settings\Owner\Desktop

\Pépi\Programação\Java\Workspace Eclipse\ProjetoProcura\lib\miglayout-3.7.1-swin

g.jar meujar.jar

Exception in thread main java.lang.NoClassDefFoundError: and

Caused by: java.lang.ClassNotFoundException: and

at java.net.URLClassLoader$1.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

Could not find the main class: and.  Program will exit.[/color]
lina

pedroroxd:
Deu isso:

C:\Documents and Settings\Owner>
java -cp C:\Documents and Settings\Owner\Desktop\Pépi\Programação\Java\Workspace Eclipse\ProjetoProcura\lib\miglayout-3.7.1-swing.jar meujar.jar

[color=red]C:\Documents and Settings\Owner>java -cp C:\Documents and Settings\Owner\Desktop

\Pépi\Programação\Java\Workspace Eclipse\ProjetoProcura\lib\miglayout-3.7.1-swin

g.jar meujar.jar

Exception in thread main java.lang.NoClassDefFoundError: and

Caused by: java.lang.ClassNotFoundException: and

at java.net.URLClassLoader$1.run(Unknown Source)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

Could not find the main class: and.  Program will exit.[/color]</blockquote>

Oi,

Você tem que substituir meujar.jar pelo nome de seu JAR. :wink:

Tchauzin!

pedroroxd

Perae… como assim? pensei que o meujar.jar seria o jar gerado do meu projeto… Então tava entendendo errado…

Meu projeto tá assim:

Dentro da pasta lib tá o miglayout-3.7.1-swing.jar
E dentro da pasta META-INF tá o MANIFEST.MF
Dentro do manifest tá escrito:

Manifest-Version: 1.0
Main-Class: projetoprocura.Main
Class-Path: lib/miglayout-3.7.1-swing.jar

O que então seria o meujar.jar?
Tem alguma coisa de errado?

lina

Oi,

Qual o nome do seu JAR??? você criou ele como: meujar.jar ???

Tchauzin!

Marky.Vasconcelos

Pedroroxd… se voce esta usando as versoes recentes do eclipse voce tem a opção Export… Runnable Jar File, que é uma versao embutida do FatJar no Eclipse. Tente gerar seu executavel por ele.

pedroroxd

kkk
Vlws… Descobri agora! =)

Só 1 coisa…
Tem um .txt que eu uso no projeto, mas quando eu gero o .jar ele não vai junto…
o que eu faço?

Marky.Vasconcelos

Ué… seleciona ele pelo wizard do export para Jar.

pedroroxd

Não entendi…
Esse é meu projeto:

Eu quero que o lista.txt vá junto com o jar…

Quando seleciono Runnable JAR File, ele me mostra isso:

Ae ele gera o .jar…

O que eu to fazendo de errado? =/

evertonsilvagomesjav

pedroroxd:
Não entendi…
Esse é meu projeto:

Eu quero que o lista.txt vá junto com o jar…

Quando seleciono Runnable JAR File, ele me mostra isso:

Ae ele gera o .jar…

O que eu to fazendo de errado? =/

È porque seu folder lib tem que estar dentro do seu src, ai na hora que vc gerar seu .jar o txt vai junto.

pedroroxd

evertonsilvagomesjava:

È porque seu folder lib tem que estar dentro do seu src, ai na hora que vc gerar seu .jar o txt vai junto.

Que?
Axo que alí ta certo sim…
Só que quando gera o .jar o lista.txt não vai junto… Porque?

tauame

tu tentou colocar a pasta “lib” dentro do “src” antes de gerar?

pedroroxd

Blz, coloquei a pasta lib dentro da src.
Ficou assim:

Mas quando ele gera o .jar ele continua indo sem a “lista.txt”
Então dá erro quando se faz
File myFile = new File(“lista.txt”);
Ele não consegue…

evertonsilvagomesjav

pedroroxd:
Blz, coloquei a pasta lib dentro da src.
Ficou assim:

Mas quando ele gera o .jar ele continua indo sem a “lista.txt”
Então dá erro quando se faz
File myFile = new File(“lista.txt”);
Ele não consegue…

Cara seu txt ta dentro da pasta lib? Pelo print ai nao ta nao. O arquivo .Jar compacta tudo que esta dentro do seu SRC por isso o txt nao tava indo.

Marky.Vasconcelos

Mesmo estando dentro do jar voce nao vai conseguir acessar ele com new File(“lista.txt”) voce precisa no minimo pegar com o método getResource do ClassLoader.

pedroroxd

Mas mesmo assim, ele não está dentro do jar! =X

Criado 27 de abril de 2010
Ultima resposta 6 de mai. de 2010
Respostas 20
Participantes 6