Foros del Web » Programación para mayores de 30 ;) » Java »

lanzar programa java desde otro programa java

Estas en el tema de lanzar programa java desde otro programa java en el foro de Java en Foros del Web. Hola a todos. Tengo una duda que necesito resolver: ¿Como puedo lanzar un programa java desde otro programa? Utilizando: Runtime ejecutor=Runtime.getRuntime(); Process proceso=ejecutor.exec("C:\\Documents and Settings\\Administrador\\Escritorio\\prueba"); ...
  #1 (permalink)  
Antiguo 19/06/2004, 04:11
 
Fecha de Ingreso: marzo-2004
Mensajes: 550
Antigüedad: 20 años, 1 mes
Puntos: 7
Sonrisa lanzar programa java desde otro programa java

Hola a todos. Tengo una duda que necesito resolver:

¿Como puedo lanzar un programa java desde otro programa?

Utilizando:

Runtime ejecutor=Runtime.getRuntime();
Process proceso=ejecutor.exec("C:\\Documents and Settings\\Administrador\\Escritorio\\prueba");

siendo "prueba" el fichero java ya compilado(el original es prueba.java) me da error. En cambio si ejecuto un ejecutable .exe entonces me funciona.

Me urge resolver dicho problema por lo que agradecería mucho si alguien me pudiera ayudar.

Un saludo
  #2 (permalink)  
Antiguo 19/06/2004, 05:14
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Hola,

Una reflexión... como haces para lanzar un programa en Java desde una consola de DOS... ejecutando "prueba" y ya esta? Pues lo mismo que haces para lanzarlo en modo comandos es lo que has de pasarle al Runtime.exec().

Un saludo
  #3 (permalink)  
Antiguo 19/06/2004, 06:27
 
Fecha de Ingreso: marzo-2004
Mensajes: 550
Antigüedad: 20 años, 1 mes
Puntos: 7
Gracias GreenEyed por responder. Yo cuando lanzo un programa java desde la consola hago lo siguiente:

java prueba (siendo prueba mi fichero java ya compilado prueba.java)

pero si pongo:

Runtime ejecutor=Runtime.getRuntime();
Process proceso=ejecutor.exec("C:\\Documents and Settings\\Administrador\\Escritorio\\java prueba");

eso ME DA ERROR.

Una ayuda por favor.

Un saludo.
  #4 (permalink)  
Antiguo 19/06/2004, 09:04
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Hola,

Y si ejecutas eso en una consola de MSDOS, te funciona? Tienes java en el "path"? El fichero prueba.class, incluyendo mayusculas/minusculas, esta en el escritorio? Esta la clase prueba en algún paquete?... Lo mejor seria que leyeses el "stream" de error del proceso y lo imprimieras, para ver que error te devuelve.

Nota: El stream de error se consigue con proceso.getErrorStream()

Un saludo
  #5 (permalink)  
Antiguo 23/06/2004, 11:20
Avatar de kittya  
Fecha de Ingreso: abril-2004
Mensajes: 260
Antigüedad: 20 años
Puntos: 0
que el ejecutable funcione y java no e spor que no tienes el pun to jar si lo que quieres es ejecutar el java tienes que especificar el path


set path=c:\program files\j2sdk_nb\j2sdk1.4.2\bin; C:\\Documents and Settings\\Administrador\\Escritorio\\java prueba"
  #6 (permalink)  
Antiguo 23/06/2004, 13:19
 
Fecha de Ingreso: marzo-2004
Mensajes: 550
Antigüedad: 20 años, 1 mes
Puntos: 7
gracias kyttya por responder. No entiendo con que te refieres a que tengo que incluir el punto jar. Si yo tengo añadido el .jar en el classpath. Lo que no me funciona es al intentar ejecutar un fichero java desde otro fichero java, pero a mi si me funciona ejecutar un fichero java normal.

¿podrias poner el codigo de como se ejecutaria segun tu?

Gracias y un saludo
  #7 (permalink)  
Antiguo 23/06/2004, 14:15
Avatar de kittya  
Fecha de Ingreso: abril-2004
Mensajes: 260
Antigüedad: 20 años
Puntos: 0
haber si me explico ya creaste el jar de tu programa "prueba" si ya lo tienes ese funciona como ejecutable

java es un comando que se encuentra en el directorio

C:\j2sdk1.4\bin (depende de donde lo hayas instalado)
por lo que si quieres correr el programa tienes que ponerle la ruta del dir bin y luego la de "prueba " una forma mas facil seria que movieras tu clase al directorio "bin"
asi lo que tendrias que poner seria:
Process proceso=ejecutor.exec("C:\\j2sdk1.4.2\\bin\\java prueba");
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:07.