[RESOLVIDO]Executar vários jars simultaneamente

3 respostas
Basilio

Galera eu tenho que executar em uma máquina vários arquivos jars de forma concorrente.
Tem como eu fazer um programa que chame a execução desses jars para que eu não precise ficar incializando todos eles manualmente e conferindo se algum deles parou de funcionar?

3 Respostas

drsmachado

Criando um aplicativo baseado em threads.
Cada thread dispara um jar e, dorme.
Quando acordar, verifica se está rodando normalmente.

viudes

Olá

Como nosso amigo drsmachado citou,

Voce pode usar o ClassLoader do java para carregar os seus jars em tempo de execução.

Olhe o exemplo a baixo:

mainJarTest.jar

public class Main {
 
    public static void main(String[] args) {

        File file = new File("runtimeJarTest.jar");
        URI uriJars = file.toURI();
        URL[] urlJarsCarrega;
 
        try {
            urlJars = new URL[] {uriJars.toURL()};
            ClassLoader loader = new URLClassLoader(urlJarsCarrega);
            loader.loadClass("br.com.OlaMundo").newInstance();
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (InstantiationException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        }
    }
}

runtimeJarTest.jar

package br.com;
 
public class OlaMundo {
 
    public OlaMundo() {
        System.out.println("Olá Mundo!");
    }
}

Voce pode chamar threads para carregar diferentes Jars.

Basilio

Dei uma mudado no exemplo dessa thread e deu certo:

http://www.guj.com.br/java/240877-executar-varios-arquivos-jar-exsistentes-em-uma-pasta-utilizando-codigo-java-resolvido

Criado 23 de abril de 2012
Ultima resposta 23 de abr. de 2012
Respostas 3
Participantes 3