Este ejemplo muestra cómo llamar a otro programa Java™ con java.lang.Runtime.exec(). Esta clase llama al programa Hello que viene como parte de IBM® Developer Kit para Java. Cuando la clase Hello escribe en System.out, este programa obtiene un handle para acceder a la corriente y puede leer en ella.
Código fuente para la clase Java CallHelloPgm
import java.io.*;
public class CallHelloPgm
{
public static void main(String args[])
{
Process theProcess = null;
BufferedReader inStream = null;
System.out.println("CallHelloPgm.main() invocado");
// llamar a la clase Hello.
try
{
theProcess = Runtime.getRuntime().exec("java QIBMHello");
}
catch(IOException e)
{
System.err.println("Error en el método exec()");
e.printStackTrace();
}
// leer en la corriente de salida estándar del programa llamado.
try
{
inStream = new BufferedReader(
new InputStreamReader( theProcess.getInputStream() ));
System.out.println(inStream.readLine());
}
catch(IOException e)
{
System.err.println("Error en inStream.readLine()");
e.printStackTrace();
}
}
}