[eside-ghost] Problema al ejecutar comando externo en JAVA

Inigo i_munoz en euskalnet.net
Dom Ago 27 22:25:11 CEST 2006


Eneko chan escribió:
> Siento el posible off-topic, pero como JAVA es multiplataforma pues
> tambien vale para Linux no? ;)
>
> La cuestion es que un amigo (para el proyecto fin de carrera) necesita
> ejecutar un comando externo desde JAVA para ejecutar el menconder y el
> mplayer. Es para hacer una pequeña GUI y codificar videos en MPEG4. El
> problema es que el comando se ejecuta al cerrar la aplicacion JAVA y
> no cuando hago la llamada. Parece que queda "encolada" la llamada.
> Pense que el problema podria deberse a alguna cosa de los thread, asi
> que he creado un hilo nuevo donde se ejecuta la llamada al comando
> pero sigue sin funcionar.
>
> ¿Alguna idea?

¿Puede ser mplayer en vez de mplayer.exe?
>
> El codigo es este:
>
> Programa principal:
>
> public class Main {
>
>   public static void main(String[] args) {
>     String comando = new String(".\\mplayer.exe \"Ghost In The
> Shell.avi\"");
>
>     Ejecutar miEjecutor = new Ejecutar();
>     miEjecutor.comandoAEjecutar(comando);
>
>     Thread miThread = new Thread(miEjecutor);
>     miThread.start();
>
>     while(true); // Y me quedo aqui bloqueado para ver si la ventana
> del mplayer aparece antes de cerrar mi programa
>   }
> }
>
> Clase ejecutora:
>
> public class Ejecutar implements Runnable {
>   private String comando = new String("");
>   private String[] comandoConArgumentos;
>
>   public Ejecutar() {
>   }
>
>   public void comandoAEjecutar(String S) {
>     comando = S;
>   }
>
>   public void run() {
>     try {
>       this.comandoConArgumentos = this.comando.split("\\s"); // Si los
> argumentos tienen espacios hay que pasar el comando en un String[] y
> por eso lo separo segun los espacios
>       Process p = Runtime.getRuntime().exec(this.comandoConArgumentos);
>     } catch(Exception e) {
>       System.out.println(e);
>     }
>   }
> }
>
>
> -- 
> Fotolog: http://www.fotolog.net/ceng
> ------------------------------------------------------------------------
>
> _______________________________________________
> eside-ghost mailing list
> eside-ghost en deusto.es
> https://listas.deusto.es/mailman/listinfo/eside-ghost



Más información sobre la lista de distribución eside-ghost