Chamando JAR em uma Classe

1 resposta
J
Tenho uma classe que grava um arquivo específico para mim. Compilei um JAR com os componentes necessários e consigo rodá-la sem problemas com dois-cliques no windows. Ela requer um parâmatro e para resolver o problema, criei um "shortcut" onde coloco o parâmetro e ela roda bem.





Agora, quero chamá-la de uma outra classe Java. Após várias pesquisas no forum, vim com o código abaixo:





        String [] alComando = {"C:/Program Files/java/j2re1.4.1_01/bin/java -jar",


                               "C:/Fly! II Workbench/sistema/gerarMetar.jar",


                               "C:/Fly! II Workbench/"};


        try {


            Runtime.getRuntime().exec(alComando);


            // Runtime.getRuntime().exec(alComando).waitFor();


        } catch (Exception runCommand) {System.out.println(runCommand.getMessage());}





Quando executo no Sun Studio 4, recebo a seguite mensagem:





CreateProcess: "C:/Program Files/java/j2re1.4.1_01/bin/java -jar" "C:/Fly! II Workbench/sistema/gerarMetar.jar" "C:/Fly! II Workbench/" error=2





 utilizei as duas formas de Runtime acima, mas não consigo executar.  tentei chamar sem o java -jar, indo direto para a parte com C:/Fly! II, e a única diferença é que o código de erro é =193 em vez de =2.





Se puderem ajudar ficarei grato.

1 Resposta

J

Finalmente eu encontrei onde o problema estava. Veja o código abaixo:



String [] alComando = {"C:/Arquivos de Programas/Java/j2re1.4.1_01/bin/java",

"-jar",

"C:/Fly! II Workbench/sistema/gerarMetar.jar",

"C:/Fly! II Workbench/"};



Eu estava passando "java -jar" na primeira ocorrência da array. Mas isto não funciona, cada componente do comando precisa estar numa ocorrência separada da array. :smiley:

Criado 11 de abril de 2003
Ultima resposta 11 de abr. de 2003
Respostas 1
Participantes 1