[RESOLVIDO]icones somem ao gerar .Jar

24 respostas
evertonsilvagomesjav

Pessoal quando eu gero o .jar meus icones estao sumindo, tem como me ajudarem? Meus icones estao dentro do workspace dentro do meu projeto.

24 Respostas

M

Como você está carregando os ícones? Eles estão diretamente na pasta do seu projeto ou estão em alguma subpasta?

M

Ahh… outra coisa: eles somem pois não são exibidos ou somem porque não são incluídos no JAR?

evertonsilvagomesjav

estão aqui…

this.iconeBarraTitulo = new ImageIcon("src/com/mascarenhas/icones/mascarenhas.png");

eu abri o jar. e vi que no jar nao tem a pasta “src” que é o source folder por isso nao ta achando, mas nao sei como resolver.

dyorgio

retire os icones do src
colone numa pasta icons por exemplo,
ai la nas opções do NetBeans tens que indicar que essa pasta vai junto no build do jar.

pasta src nunca vai existir no jar, pois src significa source(codigo fonte)

evertonsilvagomesjav

to usando o eclipse…

dyorgio

pelo codigo parecia NetBeans…bem coisa dele fazer isso…
vamos la:

use isso:

new ImageIcon(getClass().getResource("/com/mascarenhas/icones/mascarenhas.png"));

que o programa vai funcionar no jar e no eclipse.

M

Sugestão: dentro da pasta ‘src’ crie uma pasta para os ícones (pode ser ‘icons’ por exemplo).

Aí no seu código carregue da forma indicada pelo dyorgio:

new ImageIcon(getClass().getResource("/icons/seuIcon.png"));

A dica é a mesma do dyorgio, porém sugiro criar uma pasta separada para os ícones por questão de organização.

C

opa entao cria um pacote dentro do projeto e coloca suas imagens dentro desse pacote!
dai e so pegar os icones dentro do pacote! nao tem segredo!

evertonsilvagomesjav

ta dando NullPointer agora this.iconeBarraTitulo = new ImageIcon(this.getClass().getResource("icones/mascarenhas.png"));

esse método getClass() busca o nome da classe? E esse getResource(String algumaCoisa) retorna um caminho?

dyorgio

o null pointer ocorre porque não achou a imagem…
vc criou essa nova pasta?
se sim, experimente com ‘/’ no inicio…

evertonsilvagomesjav

Criei sim, uma pasta dentro do src, chamada icones…

this.iconeBarraTitulo = new ImageIcon(this.getClass().getResource("/icones/mascarenhas.png"));
dyorgio

hummmm

tenta mais esse :slight_smile: :

new ImageIcon(getClass().getClassLoader().getResource("icones/mascarenhas.png"))

com a pasta icones dentro de src…

evertonsilvagomesjav
this.iconeBarraTitulo = new ImageIcon(this.getClass().getClassLoader().getResource("icones/mascarenhas.png"));

deu NullPointer ainda =/

dyorgio

po meu, mais isso eu copiei e colei de um programa que funciona…
ta estranho isso ai :frowning:

M

Qual é a hierarquia do seu projeto agora? O getClass().getResource deveria funcionar (note que quando usando esse método sempre comece um uma barra o caminho).

evertonsilvagomesjav

quando eu faço assim funciona carrega normal no eclipse…

this.iconeBarraTitulo = new ImageIcon("src/icones/mascarenhas.png");
KWill

[quote=evertonsilvagomesjava]quando eu faço assim funciona carrega normal no eclipse…

this.iconeBarraTitulo = new ImageIcon("src/icones/mascarenhas.png");

Acho que eu fazia mais ou menos assim:

this.setIconImage(ImageIO.read(this.getClass().getResourceAsStream("/gnu/saw/terminal/graphical/resource/terminal.png")));

O que poderia ser adaptado para:

this.iconeBarraTitulo = new ImageIcon(ImageIO.read(this.getClass().getResourceAsStream("/icones/mascarenhas.png")));

Se precisar, verifique se o arquivo jar tem essas imagens que devem ser carregadas, abrindo o arquivo jar como se fosse um arquivo zip, lembrando que essas imagens devem estar dentro do jar num diretório chamado “icones”.

Inté.

M

[quote=evertonsilvagomesjava]quando eu faço assim funciona carrega normal no eclipse…

this.iconeBarraTitulo = new ImageIcon("src/icones/mascarenhas.png");

Isso porque no Eclipse o diretório principal do qual sua aplicação é executada é a pasta do projeto (por isso é necessário incluir o ‘src’). Acontece que ao ser empacotado em JAR esse diretório deixa de existir e o caminho muda. Por isso é mais recomendável usar o getClass().getResource().

evertonsilvagomesjav

rapaz nao sei o que é...desse jeito tb ta dando nullpointer...

this.iconeBarraTitulo = new ImageIcon(ImageIO.read(this.getClass().getResourceAsStream("/icones/mascarenhas.png")));  
					
			this.setIconImage(iconeBarraTitulo.getImage());
evertonsilvagomesjav

alguem??

dyorgio

Cara, ninguem esta respondendo porque esgoratam as possibilidades de erro de programação…
tem algum galho em como vc esta montando o projeto e/ou empacotando o jar…
para ajuda-lo teriamos que ter acesso ao projeto inteiro e jar.

evertonsilvagomesjav

Dyorgio posso te mandar pra ver se vc consegue me ajudar?

dyorgio

Claro cara, o meu e-mail é o mesmo msn, ta la no meu perfil.

evertonsilvagomesjav

Ai pessoal vlww resolvido o problema, vlw Dyorgio por me ajudar =D

Criado 3 de março de 2010
Ultima resposta 4 de mar. de 2010
Respostas 24
Participantes 5