Ejecutar archivo desde java

Mi pregunta es si la única manera de ejecutar archivos desde java es con:
Process programa = Runtime.getRuntime().exec("cmd /c C:\\CoCoA\\cocoa.exe");
Tengo un problema al ejecutar dicho archivo, que pertenece a un software llamado CoCoA y no entiendo la razón, porque otros archivos en la misma carpeta sí que se ejecutan. Es más, si hago doble click sobre el archivo cocoa.exe, hace la operación correctamente, pero si lo hago desde Java no hay manera.
También he probado creando un archivo bat que contenga la ruta arriba especificada. Si ejecuto el bat haciendo doble click sobre él funciona perfectamente, pero si ejecuto el bat con la instrucción de arriba, vuelve a no hacer nada.
Decir también que he probado en varios ordenadores y varias actualizaciones del programa CoCoA y ocurre lo mismo siempre.

1 Respuesta

Respuesta
1
Yo probaría lo siguiente: desde el runtime de java, ejecuta un bat (cocoa4jvm.bat por ejemplo) que tenga estas dos líneas:
cd C:\CoCoA
cocoa.exe
Puede que "cocoa.exe" use para algo el directorio desde donde está corriendo el programa. Si no haces el "cd C:\CoCoa" el directorio que se usará es el de la JVM.
Por lo que veo estás corriendo la aplicación en windows, por lo que el problema no creo que venga por temas de permisos de usuario. Prueba lo del bat a ver si es eso. Si no, seguimos investigando.
Magnífica y sencillísima respuesta!
Jamás me imaginé que la solución fuera algo así, así que muchísimas gracias porque era lo único que me faltaba para finalizar mi proyecto de fin de carrera.
Un saludo y gracias de nuevo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas