Pessoal quando eu gero o .jar meus icones estao sumindo, tem como me ajudarem? Meus icones estao dentro do workspace dentro do meu projeto.
Como você está carregando os ícones? Eles estão diretamente na pasta do seu projeto ou estão em alguma subpasta?
Ahh… outra coisa: eles somem pois não são exibidos ou somem porque não são incluídos no JAR?
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.
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)
to usando o eclipse…
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.
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.
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!
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?
o null pointer ocorre porque não achou a imagem…
vc criou essa nova pasta?
se sim, experimente com ‘/’ no inicio…
Criei sim, uma pasta dentro do src, chamada icones…
this.iconeBarraTitulo = new ImageIcon(this.getClass().getResource("/icones/mascarenhas.png"));
hummmm
tenta mais esse :
new ImageIcon(getClass().getClassLoader().getResource("icones/mascarenhas.png"))
com a pasta icones dentro de src…
this.iconeBarraTitulo = new ImageIcon(this.getClass().getClassLoader().getResource("icones/mascarenhas.png"));
deu NullPointer ainda =/
po meu, mais isso eu copiei e colei de um programa que funciona…
ta estranho isso ai
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).
quando eu faço assim funciona carrega normal no eclipse…
this.iconeBarraTitulo = new ImageIcon("src/icones/mascarenhas.png");
[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é.
[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().
rapaz nao sei o que é…desse jeito tb ta dando nullpointer…
[code]this.iconeBarraTitulo = new ImageIcon(ImageIO.read(this.getClass().getResourceAsStream("/icones/mascarenhas.png")));
this.setIconImage(iconeBarraTitulo.getImage());[/code]