Olá pessoal,
Meu objetivo é criar um programa, utilizando algumas classes de pacotes como a Java Avanced Imaging (JAI) por exemplo, e empacotá-lo em um JAR, mas se possível imbutindo as classes necessárias no JAR, e somente elas, para não precisar acoplar todo o pacote JAI em meu programa.
Usei o Netbeans 6.0.1 (e jdk1.6.0_04) para criar um programa simples para realizar este teste. Eu consigo executá-lo em minha máquina, porém existem dois problemas que não consegui resolver:
1 - Eu consigo executar o JAR com clique-duplo, porém ele só funciona corretamente quando invocado via 'java - jar'. Com a invocação por linha de comando, ele executa, mostra a mensagem, le a imagem e gera o arquivo de saída, no mesmo diretório, sem problemas. Porém via clique duplo ele apenas mostra a mensagem FOO, e não gera a saída. Já verifiquei meu sistema pois achei q a saída poderia estar indo para outra pasta, mas não encontrei nenhum arquivo de saída.
2 - Deixando de lado o problema da invocação, e chamando-o pela linha de comando, ele está funcional. Porém quando tentei rodá-lo em uma outra máquina, com a jre1.6.0_03 instalada, para verificar se realmente ele nao estava precisando dos componentes JAI, eu também consigo executá-lo e recebo a mensagem FOO na tela, porém recebo o erro:
C:\Documents and Settings\Administrador\Desktop>"C:\Arquivos de programas\Java\jre1.6.0_03\bin\java.exe" -jar JavaApplication4.jar
Exception in thread "main" java.lang.NoClassDefFoundError: javax/media/jai/JAI
at javaapplication4.Main.main(Main.java:26)
e a parte do código que supostamente carregaria a imagem e salvaria não funciona, ou seja, ele executa, mostra a msg FOO mas não carrega a imagem.
Estou confuso com esta situação de o código executar parcialmente... já fiz várias buscas porém sem sucesso, pois não estou sabendo ao certo onde está o problema.
PS: A classe Main de meu projeto está definida. Relembro que em minha máquina eu consigo executá-lo normalmente quando o invoco por 'java -jar' e também não estou esquecendo de copiar o arquivo teste de imagem para a pasta do jar.
Em anexo estou postando o arquivo JAR para caso seja pertinente alguma análise do arquivo de MANIFEST.
Qualquer ajuda será bem vinda,
Obrigado a todos,
_dude
public static void main(String[] args) {
JOptionPane.showMessageDialog(null, "foo");
PlanarImage image = JAI.create( "fileload" , "futurama.jpg");
JAI.create( "filestore" ,image, "futurama.bmp" );
}
