Java - Redireccionar salida de procesos

 
Vista:

Redireccionar salida de procesos

Publicado por Walter (33 intervenciones) el 16/08/2005 05:05:17
Tengo otro problema, lo que quiero hacer es lo siguiente ....

Process p = Runtime.getRuntime().exec("java holaMundo");

y la salida se almacene en un archivo o algo parecido, ya probe con getINputStream(), getOutputStream(), y getErrorStream()... por favor cualquier idea es muy bien apreciada. gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Redireccionar salida de procesos

Publicado por Walter (33 intervenciones) el 16/08/2005 06:38:44
Mas especificamente lo que quiero es redireccionar la salida de por ejemplo :
Runtime.getRuntime().exec("javac holaMundo.java");
a un archivo, un panel o lo que sea, por favor es urgente. Por ejemplo los errores q se reportan al compilar la clase. Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Redireccionar salida de procesos

Publicado por chuidiang (532 intervenciones) el 17/08/2005 15:46:14
Hola:

Lo que quieres hacer efectivamente se hace obteniendo los ErrorStream, OutputStream y demás.

Lo que tienes que hacer después es un hilo (thread) con un bucle, que se encargue de leer el stream periodicamente y redireccionarlo a donde tu quieras.

En http://members.lycos.co.uk/chuidiang/ejemplos/Runtime/runtime.html tienes un pequeño ejemplo que saca la salida del programa por pantalla.

Se bueno.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

No funciona con JAVAC

Publicado por Walter (33 intervenciones) el 17/08/2005 21:29:57
Gracias pero no funciona con javac .. lo que quiero es q me muestre la salida de javac ....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 755
Bronce
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

RE:No funciona con JAVAC

Publicado por Yamil Bracho (2315 intervenciones) el 18/08/2005 15:37:42
Puedes capturar la salida asi :

try {
String line;
String cmdline ="javac tuprograma.java";
Process p = Runtime.getRuntime().exec(cmdline);
BufferedReader in = new BufferedReader(
new InputStreamReader (p.getInputStream()));
while ((line = input.readLine()) != null) {
System.out.println(line);
}
input.close();
} catch (Exception ex) {
ex.printStackTrace();
}
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Sigue sin funcionar

Publicado por Walter (33 intervenciones) el 18/08/2005 23:14:54
Hola Yamil gracias pero no me funciona con javac ... quiero redireccionar los errores que pueda tener el archivo java, de todas formas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Sigue sin funcionar

Publicado por chuidiang (532 intervenciones) el 19/08/2005 09:52:16
Hola de nuevo:

¿Has probado a obtener p.getErrorStream() en vez de p.getInputStream()?. Los errores de una aplicacion salen por ahi.

Se bueno.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Sigue sin funcionar

Publicado por WIlfredo Vargas Almendras (314 intervenciones) el 19/08/2005 23:14:33
Hola, algo que tambien podrias hacer es redireccionar la salida standar de javac ...
javac -Xstdout archivo.txt Compilar.java

esto te sirve para redireccionar tu salida a un archivo ...

SALUDOS WVA
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar