Identification

Convertir un .jar en exécutable Windows

Catégorie : Développement Java

Cette recette propose une solution pour transformer une application Java (.jar) en exécutable Windows (.exe). L'application devra embarquer son environnement d'exécution Java (JRE) et sera empaquetée dans un programme d'installation.

Outils nécessaires

Pour cette recette, nous allons utiliser les applications suivantes :

Éclipse pour Java
Environnement de développement intégré pour Java ; je pars du principe que vous développez vos applications avec cet outil. Site officiel Éclipse
Launch4j
Outil multi-plateforme permettant d'encapsuler les applications Java dans des exécutables Windows natifs. Site officiel Launch4

Arborescence de fichiers

Il s'agit de commencer par imaginer une structure de répertoires pour stoker votre application. Voici celle que je vous propose, à adapter selon les besoins de votre application :

structure-finale

jar
Dans ce dossier (optionnel) sera stocké le jar exécutable de l'application.
jre6
Contient l'environnement d’exécution Java embarqué avec notre application. Typiquement, il s'agit d'un simple copier/coller d'un environnement d’exécution déjà présent dans votre dossier C:\Program Files\Java\

La première chose à faire est donc de créer cette structure de fichiers quelque part sur votre disque dur et de copier l'ensemble des fichiers de votre JRE courant dans le dossier jre\

Création de l'executable Java

Maintenant il nous faut une application Java fonctionnelle que nous allons exporter dans un fichier Jar exécutable.

Dans Éclipse : clic droit sur votre projet, choisir Exporter :

export-jar1

Dans la fenêtre de sélection du type d'export, choisir Java > Fichier JAR exécutable :

export-jar2

Dans la fenêtre des propriétés de l'export, choisissez la configuration de lancement, la destination de l'exportation, et sélectionnez Empaqueter les librairies requises dans le fichier JAR généré. Cliquez enfin sur le bouton "Terminer" pour créer votre fichier exécutable Java...

export-jar3

Création de l'executable Windows

Une fois notre exécutable Java crée, nous pouvons paramétrer Launch4j afin qu'il encapsule notre fichier jar dans un exécutable Windows. Voici les champs à renseigner au minimum dans notre cas :

Onglet Basic, renseigner le champ Output file avec le chemin de l'exécutable à créer, et le champ Jar avec le chemin du fichier JAR exécutable crée ci-dessus :

launch4j1

Dans l'onglet JRE, renseigner le champ Bundled JRE path. Il s'agit d'un chemin relatif à l'endroit où se situera l'exécutable crée par Launch4j :

launch4j2

Une fois ces paramètres correctement renseignés, il faut sauvegarder la configuration, créer le fichier exécutable Windows et tester son lancement :

 launch4j3

A ce stade, Launch4j a fait son travail et en a profité pour créer un fichier launch4j.log que vous pouvez consulter et supprimer si tout c'est bien passé :

launch4j4