• Domingo 22 de Septiembre de 2024, 01:10

Autor Tema:  Ejecutar una aplicacion desde código java  (Leído 1322 veces)

aisbel

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Ejecutar una aplicacion desde código java
« en: Viernes 8 de Mayo de 2009, 18:33 »
0
Hola a todos,

voy a exponeros una duda que llevo tiempo intentando resolver:

Quiero ejecutar una aplicacion desde otra aplicacion en java.
La idea es tener un fichero con una extension, por ejemplo: lanzador.drv
De forma que ese fichero, contenga lo necesario para ejecutar una aplicacion, por ejemplo:

lanzador.drv
----------------
java -jar /home/Hola.jar


Quiero hacerlo de esta forma, ya que cada aplicacion a ejecutar, tendra su lanzador.drv donde diga cómo se tiene que ejecutar.
Y desde código java, poder ejecutar el contenido de lanzador.drv.

He intentado hacer lo siguiente:

public pruebaExec() {
        Runtime r = Runtime.getRuntime();
         try {
             Process p = r.exec("/home/lanzador.drv");
         }
          catch (IOException e) {
             System.err.println(e.getMessage());
         }
    }


pero no funciona, ya que dice que lanzador.drv no es un archivo ejecutable.
Sabeis de qué otro modo podría resolver el problema??
Gracias de antemano.... :)

emuller

  • Miembro MUY activo
  • ***
  • Mensajes: 104
    • Ver Perfil
Re: Ejecutar una aplicacion desde código java
« Respuesta #1 en: Domingo 10 de Mayo de 2009, 03:42 »
0
Por lo que veo parece que estás trabajando en GNU/Linux o en algún sistema operativo similar (por lo del /home en el r.exec).

Forma más complicada: lee el contenido del archivo a un string y utiliza ese string como parámetro de r.exec. Lo bueno es que te va a funcionar en cualquier sistema operativo.

Forma más fácil: en vez de que el archivo sea lanzador.drv haz que sea un script shell. Por ejemplo que sea un lanzador.sh (en Windows debería ser lanzador.bat) y dale permiso de ejecución si está en un entorno tipo UNIX (GNU/LInux, etc). Tiene la desventaja de no ser muy portable (entre diferentes sistemas operativos).
Mi deseo: que le otorguen el premio Nobel de la paz al inventor del Copy & Paste. Gracias por evitarme tantas peleas con el tiempo y aumentar la esperanza de vida de mi teclado \":)\"