JavaExe n'est sur aucun réseau social !
JavaExe permet de lancer votre application Java à partir d'un .exe, comme s'il s'agissait soit d'une application Windows, d'un Service système, d'un panneau de configuration ou encore d'un écran de veille.
Il est également possible de fournir votre application Java avec un JRE afin de la rendre autonome quelque soit la configuration du système client.
Principales fonctionnalités de JavaExe :
- Support des JRE 64bits.
- Lancement en tant qu'Application Windows.
- Lancement en tant que Service (avec possibilité d'interagir avec le Bureau).
- Lancement en tant que Panneau de configuration de Windows (Control Panel).
- Lancement en tant qu'écran de veille (Screen Saver).
- Détection automatique du type de lancement selon les fonctionnalités utilisées.
- Limitation du nombre d’instance en cours d’exécution.
- Lancement de l'application Java en mode Admin.
- Possibilité de lancer seulement une partie de l'application Java en mode Admin.
- Restauration automatiquement de l’application Java après un redémarrage système.
- Service : détection automatique d'un changement de configuration depuis la création du service.
- Gestion du contrôleur de services Windows.
- Gestion de la barre des tâches.
- Gestion de l'arrêt du PC ou de sa mise en veille, du verrouillage de la session...
- Possibilité d'interdire le déclenchement de l'écran de veille, l'extinction du moniteur ainsi que la mise en veille automatique du PC.
- Gestion de la base de Registre de Windows.
- Interception des événements systèmes de Windows (tel que l’insertion ou l’éjection d’un périphérique, demande de redémarrage du système, état de la batterie, ...).
- Possibilité de définir un écran de démarrage dynamique.
- Possibilité de définir un écran de démarrage statique (au format BMP, GIF, JPG ou PNG).
- Possibilité de changer l'icône du fichier exécutable.
- Prise en charge de l'Unicode.
Pour créer un fichier exécutable, il suffit tout simplement de copier JavaExe.exe (et JavaExe.cpl pour un panneau de configuration, ou JavaExe.scr pour un écran de veille) dans votre répertoire contenant l'application Java, puis lui donner le même nom que votre .class ou .jar principal.
JavaExe.exe est fourni avec une version console, JavaExe_console.exe, permettant d'avoir la console DOS pour d'éventuels sortie écrans. Tout ce qui sera dit sur JavaExe.exe s'applique à JavaExe_console.exe.

|
Si ma classe principale se nomme MyApp.class, je copie puis renomme JavaExe.exe en MyApp.exe
De même pour un .jar, si ma classe principale est contenu dans MyApp.jar, alors je renomme JavaExe.exe en MyApp.exe. |
Le .class ou .jar doivent se trouver dans le même répertoire que le .EXE ou dans un répertoire nommé par défaut "resource" à créer au même niveau que le .EXE

|
Si MyApp.exe se trouve dans le répertoire "D:\Dev\", alors MyApp.class ou MyApp.jar se trouvent :
- soit dans "D:\Dev\"
- soit dans "D:\Dev\resource\"
|
JavaExe n'est pas un exécutable indépendant d'un JDK ou d'un JRE, il est nécessaire d'avoir installé au moins un Java Runtime Environment (JRE). Si JavaExe ne détecte pas de JDK ou JRE, il ouvrira un browser sur le site de Sun pour télécharger le JRE courant.
Vous pouvez fournir un JRE avec votre application. Dans ce cas, vous devez le mettre dans un répertoire nommé "jre", lui-même dans le répertoire du .EXE ou dans le répertoire "resource".

|
Si MyApp.exe se trouve dans le répertoire "D:\Dev\", avec un JRE local à l'application, alors ce JRE se trouve :
- soit dans "D:\Dev\jre\"
- soit dans "D:\Dev\resource\jre\"
|
Il est possible de spécifier quelle version minimum de Java vous souhaitez utiliser pour lancer votre application.
Pour cela vous devez créer un fichier, JavaExe.properties, portant le même nom que le .class ou .jar principal (comme pour le renommage de JavaExe.exe).
Ce fichier contient 12 propriétés utilisées par JavaExe :
|
- JRE version (ou JREversion) = pour spécifier la version minimum de java : 1.4 ; 1.3 ; ...
- Run Type (ou RunType) = pour spécifier comment l'application doit être lancé : '3' pour un écran de veille, '2' pour un panneau de configuration, '1' pour un lancement en tant que service, ' 0' (ou rien) pour une application normale.
- Main Class (ou MainClass) = pour indiquer le nom complet de votre classe principale, si elle se trouve dans un package : myPackage.MyClass (nécessaire seulement s'il n'y a pas de manifest dans le .jar).
- Main Args (ou MainArgs) = ces valeurs seront passées en arguments à la méthode main de votre class principale, dans la variable (String[] args).
- Resource Directory (ou ResourceDirectory) = pour indiquer le répertoire ressource contenant les DLL, les images, les fichiers de propriétées,... Si ce paramètre est absent, le répertoire nommé « resource » sera utilisé par défaut.
- Class Directory (ou ClassDirectory) = pour indiquer le ou les répertoires (séparés par ‘;') à scanner récursivement afin d'y trouver tous les .jar et .zip à mettre dans le ClassPath.
- Personal Classpath (ou PersonalClasspath) = si votre application à besoin de .jar ou .class supplémentaires ou se trouvant dans d'autres répertoires.
- Personal Options (ou PersonalOptions) = permet de spécifier les options de lancement propres à la JVM.
- Path JRE (ou PathJRE) = chemin du JRE s'il est fourni avec l'application. Par défaut il sera recherché dans le répertoire « jre », situé au même niveau que le .exe ou dans le répertoire « resource ».
- Path Browser (ou PathBrowser) = chemin du browser à utiliser pour l'installation éventuel d'un JRE (par défaut c'est le chemin d'Internet Explorer).
- Display BoxInstall (ou Display_BoxInstall) = pour indiquer si un message doit être affiché lorsque JavaExe ne trouve pas de JRE ou JDK, et demandant si l'on désire installer un JRE ou quitter l'application. Seulement deux valeurs sont acceptées : '0' ou '1'.
- URL InstallJRE (ou URL_InstallJRE) = permet d'indiquer une URL sur laquelle JavaExe ouvrira un browser dans le cas où aucun JRE ou JDK ne sera trouvé au lancement de l'application. Si cette propriété n'est pas indiquée, c'est l'URL sur java.sun.com qui sera pris en compte.
|
Il peut y avoir d'autres propriétés si votre application utilise ce même fichier pour ses propres besoins.

|
Si MyApp.exe se trouve dans le répertoire "D:\Dev\", alors MyApp.properties peut se trouver dans ce même répertoire ou dans "D:\Dev\resource\". Dans cet exemple, MyApp.properties contient :
JRE version = 1.2
Personal Classpath = .\resource\classes12.zip
MainArgs = "test" 123
MyApp sera alors lancé avec un JRE 1.2 minimum, la commande en ligne correspondante serait :
java -classpath .;.\resource\MyApp.jar;.\resource\classes12.zip MyApp "test" 123 |
pour voir la doc complète :
|
JavaExe est fourni avec un autre programme, UpdateRsrcJavaExe, permettant de changer, entre autre, l'icône de votre MyApp.exe. Pour cela il suffit de déplacer votre MyApp.exe et votre icône (au format .ICO) sur UpdateRsrcJavaExe.exe. |
|
JavaExe et UpdateRsrcJavaExe sont des créations et des propriétés de DevWizard (DevWizard@free.fr)
Vous êtes libre de vous en servir et de les fournir avec vos applications que vous souhaitez distribuer, qu'elles soient freeware, shareware ou commerciales. Seul DevWizard est autorisé à apporter une quelconque modification à JavaExe et UpdateRsrcJavaExe.
Toute demande de modification peut être faite par mail à DevWizard@free.fr |