Java - Problemas con el Runtime

 
Vista:

Problemas con el Runtime

Publicado por SARA (10 intervenciones) el 27/09/2004 20:08:53
Hola chicos, estoy teniendo muchisimos problemas para ejecutar el COCOA desde java. He creado un .bat que llame al programa y me redireccione la salida a un fichero. Si lo ejecuto desde MSDos funciona perfectamente, peor al ejecutarlo desde Java me crea el fichero, pero vacio. El codigo de terminación de la ejecucion que obtengo es 1, a lo q supongo q no esta terminando correctamente. Os inserto el codigo por si m podeis ayudar. Muchisimas gracias.

String comando = new String("c:" +File.separatorChar+ "Documents and Settings" +File.separatorChar+ "Sara " +File.separatorChar+ "Mis documentos" +File.separatorChar+ "PROYECTO" +File.separatorChar+ "todo" +File.separatorChar+ "cocoa.bat");
int terminacion;

try{
System.out.println(comando);
Runtime r = Runtime.getRuntime();
Process p = r.exec(comando);
terminacion = p.waitFor();
System.out.println("terminacion =" +p.exitValue());

}
catch (IOException exception){
exception.getCause();
}
catch (InterruptedException exception)
{
exception.getCause();
}
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
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:Problemas con el Runtime

Publicado por Yamil Bracho (2315 intervenciones) el 27/09/2004 21:05:17
Primero verifica que puedes ejecutar ese batch desde la linea de comandos...
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:Problemas con el Runtime

Publicado por SARA (10 intervenciones) el 27/09/2004 22:35:48
Lo he verificado, por eso me estoy volviendo loca. Desde la linea de comandos lo hace perfectamente, no lo entiendo. Se que ese programa da problemas con Java pero me exigen Java para la presentación del proyecto y no se que hacer. Por cierto, he probado a ejecutar C:\\WINDOWS\\system32\\cmd.exe y se queda colgado. No tendría que salir la pantalla de MSDOS??? Gracias

SARA
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:Problemas con el Runtime

Publicado por Alvaro Mouat (15 intervenciones) el 28/09/2004 18:03:20
Ok.
Analiza lo siguiente:
El .bat esta redireccionando la salida estandar, pero desde java no sabes a donde lo está haciendo.
la clase java.lang.Process te da tres metodos para interactuar con el proceso en cuestion:
Process.getInputStream()
Process.getOutputStream();
Process.getErrorStream();

con estos puedes leer la salida estandar del proceso sin tener que utilizar un .bat para redireccionarla.

Este ejemplo es de javaalmanac:

try {
// Execute command
String command = "ls";
Process child = Runtime.getRuntime().exec(command);

// Get the input stream and read from it
InputStream in = child.getInputStream();
int c;
while ((c = in.read()) != -1) {
process((char)c);
}
in.close();
} catch (IOException e) {
}

Suerte...
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