Imagem some, depois de compilar

5 respostas
rafael_lagatta

Olá pessoal,

Obrigado mais uma vez pela ajuda.
Quando executo o programa pela IDE, as imagens aparecem normal, estão dentro de um pacote só para imagens.
Mas depois que compilo, e executo o .jar, as imagens somem.

Como faço para ter as imagens dentro do .jar, sem perder as referências?

Segue trecho do código usado:

jInternalFrameUpdateCadastroSite.setFrameIcon(new ImageIcon("src/org/com/teste/images/file.png"));

Se tratando de compilação, existe a possibilidade de esta compilando as lib, junto com o .jar?

Obrigado

5 Respostas

mau_rs

a pasta src está junto com o jar(no mesmo lugar)?

rafael_lagatta

Sim…
Uma coisa que consegui fazer, é pegar a imagem usando o código abaixo:

java.net.URL end_image = this.getClass().getClassLoader().getResource("org/com/teste/images/file.png");

Podem observar que não existe a pasta src, pois é raiz, e utilizo o url para capturar a imagem, mas acabei de me deparar com outro problema…
não consigo setar o icone de um internalframe, pois não aceita variável do tipo URL…

rafael_lagatta

Sim…
Uma coisa que consegui fazer, é pegar a imagem usando o código abaixo:

java.net.URL end_image = this.getClass().getClassLoader().getResource("org/com/teste/images/file.png");

Podem observar que não existe a pasta src, pois é raiz, e utilizo o url para capturar a imagem, mas acabei de me deparar com outro problema…
não consigo setar o icone de um internalframe, pois não aceita variável do tipo URL…

Que maravilha!!

Segue a sintaxe usada para setar o icon de um internal frame:

jInternalFramebradescoeditoperation.setFrameIcon(new ImageIcon(this.getClass().getClassLoader().getResource("org/com/lagatta/images/delete.png")));

Espero ter ajudado a outras pessoas também…

Agora, é possivel compilar as lib junto com o .jar?

Obrigado

M

Sim é possível. Se você usa o Eclipse Ganymede 3.4 é só clicar com o botão direito sobre o projeto e escolher “Export…” -> Java -> Runnable JAR. Isso irá fazer um “repack” das dependências no seu JAR. Se não usa essa versão do Eclipse, procure por FATJAR. Se usa NetBeans. aí terá que pesquisar como fazer.

rafael_lagatta

Obrigado pela dica… mas minha IDE é o netbeans mesmo…
Estou pesquisando, e não achei algo equivalente…

Caso encontre, estarei postando novamente.

Obrigado!! :wink:

Criado 7 de fevereiro de 2009
Ultima resposta 8 de fev. de 2009
Respostas 5
Participantes 3