Lanzar la ejecución Java desde un archivo por lotes

En ocasiones, implementamos nuestras aplicaciones java en nuestro entorno de desarrollo Eclipse, y ejecutamos la depuración con distintos parámetros de ejecución. Podemos definir los parámetros que le queremos pasar a nuestro programa, los argumentos de la máquina virtual, la versión de java que queremos usar, etc.

Run params

Run params (pinchar para agrandar)

Si tenemos la necesidad de crear un archivo por lotes (.bat o .sh) para lanzar la ejecución de nuestro programa desde fuera de Eclipse, de modo que mantengamos la referencia a las librería utilizadas, variables, parámetros, etc., tal y como lo teníamos configurado en el entorno de desarrollo, podemos utilizar el siguiente truco:

  • Ponemos un punto de parada en el programa y ejecutamos el Debug de eclipse.
  • Desde la perspectiva de Debug, localizamos la pila de ejecución y pinchamos sobre ella con el botón derecho. Pinchamos en el menú emergente la opción “Properties”:
Propiedades de depuración

Propiedades de depuración (pinchar para agrandar)

  • Se nos mostrará una ventana con el script de ejecución que utiliza Eclipse para lanzar nuestro programa. Ya sólo tenemos que copiar el script en un archivo .bat y ejecutarlo.
Comandos

Comandos (pinchar para agrandar)

Hay que editar un poco el script antes de lanzarlo. Sin nos fijamos, al principio del script aparece:

“C:\Program Files\Java\jdk1.7.0_17\bin\javaw.exe” -agentlib:jdwp=transport=dt_socket,suspend=y,address=localhost:52465  [… resto del script …]

Hay que eliminar esa línea y sustituirla simplemente por java [… resto del script …]si tenemos bien configuradas las variables de entorno de java en nuestro equipo, o bien, sustituir las líneas comentadas anteriormente por:

“C:\Program Files\Java\jdk1.7.0_17\bin\java” -agentlib:jdwp=transport=dt_socket,suspend=y,address=localhost:52465  [… resto del script …]

Este es un pequeño truco que nos puede facilitar el desarrollo y la ejecución de nuestro código Java.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *