Para generar el instalador de nuestro programa necesitamos crear una carpeta con la estructura de directorios que queremos tener una vez se haya instalado el programa en un equipo. En nuestro caso seria la siguiente: Dentro de estas carpetas deberán estar el .jar de la aplicación y los lib necesarios para que funcione el programa. Además de la carpeta configuración que contendrá el archivo db.conf que almacena las configuraciones usadas en el arranque de la aplicación El siguiente paso es crear los ejecutables que se van a usar para hacer funcionar la aplicación una vez instalada, en nuestro caso generaremos dos: - Uno que abrirá la aplicación en modo normal, es decir, para el uso por un usuario corriente. Uno que abrirá la aplicación en modo de depuración, esto es, además de la aplicación se abrirá una consola que mostrara parámetros y resultados usados durante la ejecución. Para la creación de estos ejecutables vamos a usar la aplicación JSmooth de la siguiente manera: Generación del ejecutable de la aplicación en modo normal Una vez abierto el JSmooth nos encontramos la siguiente pantalla En la sección skeleton debemos indicar el tipo de aplicación que se iniciará al abrir el archivo ejecutable. En este caso será Windowed Wraper puesto que solo se mostraran ventanas. En el apartado de propiedades debemos escribir el mensaje que se mostrará si la máquina virtual de java no esta instalada en el sistema, así como la URL de la que puede descargarse esta. En la siguiente imagen vemos la configuración utilizada en esta sección. En la sección executable debemos de rellenar la parte relativa al ejecutable que se creará. En executable Binary debemos de poner la ruta y el nombre donde se generará el ejecutable. En executable Icon pondremos la imagen que queramos usar como icono, si no queremos usar la imagen por defecto. En current directory deberíamos introducir el directorio que será raíz cuando se este ejecutando el archivo, en nuestro caso marcaremos la opción que indica que este directorio sea el que contiene el ejecutable. En el apartado Application se indica el archivo .jar en el que está comprimidas las clases java, la clase principal del proyecto, los argumentos que se le debe pasar a la aplicación al iniciarse, en nuestro caso ninguno, y el classpath, es decir, las librerías que deben usarse para el correcto funcionamiento del programa. Los demás apartados deben dejarse como están por defecto, ya que corresponden a opciones de configuración de la máquina virtual de java. Una vez hecho esto debemos guardar el proyecto en la carpeta en la que queramos generar el ejecutable, y por último compilar para generar el .exe. Si todo ha ido bien el compilador no devolverá un OK y el ejecutable estará en la carpeta que le hemos indicado. Generación del ejecutable de la aplicación en modo depuración. La única diferencia con la generación anterior esta en la parte skeleton y en la parte Executable. En la parte skeleton debemos poner como tipo de aplicación Console Wrapper, que indica que se ejecutará en modo consola, además marcaremos la opción Press Key, esta última eperará que se pulse una tecla en la consola antes de que se cierre la aplicación. En la parte Executable la única diferencia será el nombre del archivo final, y quitaremos el icono para que ponga el de defecto y así diferenciarlo del ejecutable en modo normal. Una vez creados los ejecutables y los archivos necesarios para el uso de la aplicación vamos a proceder a generar el instalador de nuestra aplicación, que se encargará de copiar todos los archivos necesarios del programa en el equipo donde se instale, además de crear los accesos directos en el menú de inicio y en el escritorio, y añadir algunas entradas al registro para indicar que la aplicación está instalada en el equipo. Para la generación de este instalador vamos crear un script NSIS que posteriormente se compilará para generar un .exe que será el instalador. Para la creación del script vamos a usar un asistente gráfico que nos ayudará en la tarea, este programa se llama Venis IX. Creación del instalador de la aplicación Una vez abierto el VenisIX debemos de ir a la opción File->New script wizard. A continiucación se nos mostrará la siguiente pantalla: En este paso deberemos indicar varias opciones: - Si queremos usar el interfaz moderno del instalador de Windows - Si queremos añadir el desinstalador - El número de secciones de componentes que tendrá el instalador, las cuales nos permitirán seleccionar lo que queremos instalar y lo que no. En nuestro caso serán dos la sección de instalación en modo normal y la sección de instalación en modo depuración. - Las páginas que contendrá el instalador. - El nombre de la aplicación La siguiente pantalla que nos aparecerá será esta: En ella deberemos indicar la versión de la aplicación para la que se genera el instalador, la ruta por defecto en la que se instalará la aplicación, y el fichero de salida donde se guardara el instalador generado. La siguiente pantalla nos permitirá seleccionar los archivos que se instalaran para cada sección de componentes. También nos permitirá editar el nombre de cada sección, la descripción de las mismas, como aparecerán por defecto en la selección dichas secciones, y si se podrá cambiar esta selección. El siguiente paso nos permite elegir cual será el archivo ejecutable de la aplicación, que será el generado anteriormente que abrirá la aplicación en mod normal. También nos pedirá la compresión usada que dejaremos en auto, y los idiomas en los que se generará el instalador, en nuestro caso sólo en español. Por último se nos pedirán los accesos directos que queremos crear en el menú de inicio y en el escritorio para cada sección de componentes. Finalmente pulsando finish se creará el script NSIS, el cual guardamos para poder utilizarlo en futuras veces. Por último pulsamos el botón de compilar y si todo ha ido bien se nos habrá generado el instalador de nuestra aplicación, el cual será suficiente para hacer que nuestra aplicación se pueda instalar en cualquier ordenador.