[RESOLVIDO]Como encontro imagem no Jar para usar com JImagePanel?

Olá aos amigos do guj!

Estou utilizando a classe JImagePanel que vi neste post:

http://www.guj.com.br/java/56248-jimagepanel—funciona-uma-unica-vez-pq-resolvido#295271

Acontece que na minha aplicação ta funcionando direitinho, mas quando gero o Jar perco a referencia da imagem e nao funciona mais…

Então a duvida é como obter a imagem no Jar para usar nesta classe? .-.

No eclipse funcionando estou fazendo assim:

BufferedImage imagem = new ImageIO.read(new File("c://workspace//projeto//imagens//figura.png"));

JImagePanel imgPanel = new JImagePane(imagem);

Desde já agradeço pela atenção!

Cara… JImagePanel é do Projeto Towell:

http://markytechs.wordpress.com/towel-project/

portanto… leia mais sobre aqui:

http://markytechs.wordpress.com/2011/02/11/jimagepanel/

ahh…

baixe o jar aqui:

https://github.com/MarkyVasconcelos/Towel/downloads

Você pode acessar o InputStream de um arquivo no .jar da seguinte forma

SuaClasse.class.getResourceAsStream("imagem.jpg")

Sendo que imagem.jpg tá no mesmo diretório da SuaClasse.java

SuaClasse.class.getResourceAsStream("/imagens/imagem.jpg")

Nesse caso imagem tá dentro de uma pasta imagens que está dentro da pasta src

ImageIO tem um método read que recebe InputStream

1 curtida

d34d_d3v1l tinha visto um post sobre o projeto Towell, mas agora vou procurar saber mais o/

victorcosta fiz dessa forma e funcionou! :-o

Obrigado pela ajuda!

So mais uma duvida que surgiu agora. Meus pacotes estão com a estrutura br.com.aplicacao.gui
como crio essa pasta imagem no src? tem algum padrão?

Minhas imagens agora estão organizadas em pastas: Background, Cores …

coloco em uma pasta resources …
mas isso é pra web :frowning:
desktop criava um ‘pacote’ msmo

d34d_d3v1l criei os pacote e agora alem de funcionar ficou bem organizado :-o

O Maven cria esse pacote Resource, até postei uma duvida sobre isso aqui no forum.

Se alguem quiser saber mais tai o link:
http://www.guj.com.br/java/277760-resolvido-srcmainresouces-ou-srcmainjava-

Obrigado!