Imagem some, depois de compilar

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

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

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…

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…[/quote]

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

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.

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

Caso encontre, estarei postando novamente.

Obrigado!! :wink: