Boa tarde pessoal,
Gostaria de saber como abro um arquivo que esta dentro do meu arquivo .jar
A arvore do pacote esta assim:
|- META-INF
|- core
|-Jogo.java
|- imagens
|-imagem.png
|- sons
|-som.wav
Quando rodo no Netbeans roda o som e exibe a imagem tranquilamente, mas se rodo o jar usando o ?javaw ?jar? ele abre a imagem mas não roda o som.
Esta assim o código:
Esta é a classe Jogo.java que esta dentro do pacote ?core?
//Supondo que arquivo = "imagens/ imagem.png?
public BufferedImage carregarImagem(String arquivo) throws Exception{
return (ImageIO.read(getClass().getResource("/" + arquivo)));
}
//Supondo que arquivo = "sons/som.wav?
public File carregarArquivo(String arquivo) throws Exception{
return new File (getClass().getResource("/" + arquivo).getPath());
}
Já tentei usar getClass().getClassLoader() e também deu erro.
Se eu faço assim:
public BufferedImage carregarImagem(String arquivo) throws Exception{
return (ImageIO.read(carregarArquivo(arquivo)));
}
public File carregarArquivo(String arquivo) throws Exception{
return new File (getClass().getResource("/" + arquivo).toURI());
}
Nem as imagens abrem quando rodo o jar diretamente.
Eu acho que o problema é que o getResource() me retorna um URL e o FILE não aceita URL. Mas como posso resolver?
Já buscamos aqui e no google mas devemos estar usando as palavras chaves erradas, será que alguém pode nos ajudar?
Agradeço
Ricoldi.