Ícones às vezes não são carregados

Boa tarde pessoal…

Estou desenvolvendo uma aplicação em que a janela principal é consideravelmente grande, muitos componentes.

Esta aplicação já tem cerca de 5 meses de desenvolvimento, porém há mais ou menos 3 semanas eu e meus colegas começamos a perceber que alguns ícones não eram carregados quando a app era executada. Os botões aparecem vazios. Isso acontece em vários pontos da janela principal, em ícones diferentes. Ás vezes eles carregam, às vezes não. Nenhum erro é exibido. E se eu faço um getIcon() no componente que não carregou o ícone, ele retorna diferente de null.

Faz alguns dias que venho tentando resolver isso e não acho uma solução… se alguem tiver alguma idéia do que possa ser.

Vc esta usando windows , linux!?

Dependendo do sistema até uma barra invertida , acento , Letra maiusculo-minuscula interfere.

Quando um código é feito no windows e depois aberto no linux ele converte alguns caracteres dando erros na string , assim o java não acusando as vezes.

Mostre umas da linhas onde vcs colocam o icone que não aparece. =D

Eu uso linux, e a execução é feita no linux também.

Segue uma linha de exemplo como eu seto o ícone:

botao.setIcon(new ImageIcon(getClass().getResource("/icons/iconRemove.png");

Mas o estranho é que por exemplo na execução 1 esse ícone carrega e na execução 2 ele não carrega. Isso usando o mesmo .jar.

Obs.: Faltaram fechar 2 parênteses na minha resposta a cima, mas foi só um exemplo, não retirei essa linha do código.

eu não consigo usar os icones dentro do jar então não uso getClass().getResource . ‘-’

eu apenas declaro o local fora do jar.

Ex.:

botao.setIcon(new ImageIcon(“icons/iconRemove.png”));

Como não lido com icones dentro do jar eu não tenho a minima idéia! = /

Boa sorte ai! =D

Pois é, já tentei colocá-los fora do .jar pra ver se resolvia, mas acontece a mesma coisa.

Valeu.

se vc da um getIcon e ele retorna diferente de Null, então ele foi carregado e está com algum erro na exibição mesmo

vc pode tentar um updateUI ou repaint na tela onde eles nao aparecem após a inserção de todos os componentes na tela ( e antes do setVisible )