Caro, raghy.
Para alteração do ícone do .jar é simples.
se vc estiver trabalhando com componentes Swing.
importe o arquivo de imagem que será utilizado como icon sugiro a resolução 15x15
e formato .png
esse método é responsável por transformar a imagem importada em um object, pois o java encara tudo como um object
//MÉTODO UTILITÁRIO PARA EMPACOTAMENTO DA IMAGEM EM OBJECT
public static Image createFaviIcon (String fileName){
URL url = ImageLoader.class.getResource(fileName);
Image faviIcon = Toolkit.getDefaultToolkit().getImage(url);
return faviIcon;
}
no meu caso deixo por default a criação dos componentes Swing, utilizo o WindowBuilder, se a imagem estiver no mesmo pacote da sua classe java
basta passar como argumento no método o nome mais extensão, como segue o exemplo abaixo:
//ALTERAÇÃO DO ICON
Image faviIcon = ImageLoader.createFaviIcon(“biblioteca_icon15x15.png”);
setIconImage(faviIcon);
Desenvolvi uma classe utilitária para empacotar imagens, vc pode deixa-la junto ne um pacote especifico de imagens e pode acessar essa classe por herança, para ter uma padronização melhor.
CLASSE UTILITÁRIA PARA PARA IMAGENS:
/*
package images;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.image.ImageObserver;
import java.awt.image.ImageProducer;
import java.io.File;
import java.net.URL;
import javax.swing.ImageIcon;
import br.com.datasun.biblioteca.entities.Autentificacao;
import com.sun.xml.internal.bind.CycleRecoverable.Context;
public class ImageLoader {
/**
* Carrega uma imagem existente no mesmo pacote da classe ImageLoader
* @param fileName
* @return
/
public static ImageIcon createImageIcon(String fileName){
try{
URL imageURL = ImageLoader.class.getResource(fileName);
System.out.println(imageURL);
ImageIcon icon = new ImageIcon(imageURL);
return icon;
}catch (Exception e) {
e.printStackTrace();
return null;
}
}
/*
* Carrega uma imagem que exista no diretório fornecido.
* @param dir - caminho completo do diretório
* @param fileName - nome do arquivo
* @return
*/
public static ImageIcon createImageIcon(String dir, String fileName){
try{
if(!dir.endsWith(File.separator)){
dir = dir + File.separator;
}
ImageIcon icon = new ImageIcon(dir+fileName);
return icon;
}catch (Exception e) {
e.printStackTrace();
return null;
}
}
public static Image createFaviIcon (String fileName){
// coloca uma figura na barra de título da janela
URL url = ImageLoader.class.getResource(fileName);
Image faviIcon = Toolkit.getDefaultToolkit().getImage(url);
return faviIcon;
}
}
Espero ter ajudado.
Att
JEAN RODRIGO DALBON CUNHA
Engenheiro da Computação
JAVA SCJP 6 / ORACLE DBA