Unir imagens (gif, jpg) a um aquivo .JAR (instanciar)

4 respostas
P

Boa tarde galera!

Sempre uso o JAR para enviar meus arquivos '*.java' a terceiros, mas agora me deparei com um probleminha que não sei resolver: gostaria de incluir imagens ('*.jpg', '*.gif') no arquivo jar. Será que alguém poderia me explicar como faço pra inserí-las e pra instanciá-las depois??? :martelada: Se alguém puder mandar um código de exemplo ficaria muito agradecido.

Estava tentando de algumas formas, mas nao deu certo. Abaixo vou anexar o código do teste que estava fazendo, mas a imagem nunca era encotrada depois que o .jar estava feito. :?:

package teste;

import javax.swing.*;
import java.awt.event.*;
import java.awt.*;

public class teste extends JFrame
{
	private Container c;
	
	public teste()
	{
		super("teste");
		setSize(250,300);
		setLocation(100,100);
		setResizable(false);
		c=getContentPane();
		
		ClassLoader classLoader = this.getClass().getClassLoader();
		JButton Novo = new JButton(new ImageIcon(classLoader.getResource("teste/NOVO.jpg")));
		
		c.add(Novo);
		setVisible(true);
	}
	public static void main (String arg[])
	{
		teste t = new teste();
	}
}

Valeu e aguardo respostas!!! :brinde:

4 Respostas

C

irmao, o principio de vc criar pacotes e pra vc usar as classes q estao dentro desse pacote com o .jar, tp ai vc so manda os binarios. tp… entao vc no .jar vc ja empacota td o q ta dentro do pacote q ta as classes e as imagens!!
Resumindo, colocas as classes e as imagens num pacote so!!

Entendeu ??

J

Tudo bom!

Use o seguinte:
package teste; 

import javax.swing.*; 
import java.awt.event.*; 
import java.awt.*; 

public class teste extends JFrame 
{ 
   private Container c; 
    
   public teste() 
   { 
      super("teste"); 
      setSize(250,300); 
      setLocation(100,100); 
      setResizable(false); 
      c=getContentPane(); 
       
      JButton Novo = new JButton(new ImageIcon(getClass().getResource("/test/suaimagem.jpg"))); \\Nesta parte você usa a sua estrutura de pacote
       
      c.add(Novo); 
      setVisible(true); 
   } 
   public static void main (String arg[]) 
   { 
      teste t = new teste(); 
   } 
}

Não esqueça de colocar o seu jar no classpath.

Abraços.

A

Kra, se vc usa alguma ide para programar, use Ant para automatizar estas tarefas…

[]'s

A

Kra, uma dica, se vc usa alguma ide para programar, use Ant para automatizar estas tarefas…

[]'s

Criado 3 de novembro de 2004
Ultima resposta 4 de nov. de 2004
Respostas 4
Participantes 4