Mise à jour : 27 février 2003

Le package placour.launcherbuilder est un utilitaire pour la distribution multi-plateformes d'applications Java, permettant de préparer sur une plate-forme des lanceurs destinés à d'autres plate-formes.
LauncherBuilder n'utilise que les classes Java standard (pas de Swing). Il est testé sur MacOS 8.1 (MRJ 2.2.5) et Windows 98 (JDK 1.1.8 et JDK 1.3.1).

En l'état actuel, LauncherBuilder traite uniquement une organisation "passe-partout" : une archive *.jar (ou *.zip), identique pour toutes les plate-formes, contenant les codes Java et les ressources, et un code de lancement spécifique à chaque plate-forme.
La portabilité d'une telle distribution impose que l'archive contenant les codes Java se trouve dans le même dossier que le lanceur, ou dans un sous-dossier, de façon à ce que le lanceur puisse y accéder par un chemin d'accès relatif.

Lanceurs d'application Java

Le code de lancement est une application double-cliquable (par exemple application du genre JBindery pour MacOS 8 & 9), ou un fichier de script (p. ex. fichier batch pour Windows 95, 98 & Me).
Les divers types de lanceurs sont plus ou moins souples d'utilisation, et plus ou moins portables... Dans tous les cas, leur fonctionnement requiert qu'une "Machine virtuelle Java" (JVM) soit installée de la façon adéquate sur l'ordinateur hôte (elle n'est pas incorporée au code de lancement).
La JVM est spécifique à chaque plate-forme, et sa version doit répondre au minimum requis par l'application Java à exécuter. Sur certaines plate-formes on peut trouver des JVM émanant de divers fournisseurs ; quoique les spécifications Java imposent une parfaite équivalence (à version égale), il se peut qu'un programme fonctionne incorrectement sur l'une ou l'autre...

Formats produits

LauncherBuilder produit actuellement les lanceurs suivants :
- Application du genre JBindery pour système Macintosh 7.6 à 9.x (processeurs 68040 & PPC), et MacOS X en émulation (mode "Classic"),
- Application du genre MRJAppBuilder pour système Macintosh 8.x à 9.x (processeurs PPC), et MacOS X en émulation (mode "Classic"),
- Fichier batch pour Windows 95, 98 et Me (non testé sur XP). Cependant, une JVM d'origine SUN est nécessaire car ce fichier batch n'accède pas à la JVM Microsoft utilisée par le navigateur Internet. Cette JVM supplémentaire peut être régulièrement installée (dans l'Autoexec.bat ou dans la base de registres, selon la version), ou simplement déposée dans un dossier déterminé,
- Manifeste d'archive "JAR double-cliquable" pour MacOS X et Windows (sous réserve qu'une JVM de version 1.2 minimum soit régulièrement installée sur l'ordinateur hôte),
- De plus, LauncherBuilder peut directement créér l'archive JAR compressée (niveau 3, soit ZIP "normal") contenant les codes Java et ressources diverses (avec quelques options de filtrage).

Mode opératoire

Les codes de lancement sont créés sous les formats choisis, en une seule séquence d'opérations, à partir d'un panneau d'options communes éventuellement modifiées ou complétées spécifiquement pour chaque type de lanceur (il est alors possible de les enregistrer).
Les options sont spécifiées dans une interface graphique, d'une façon relativement analogue aux arguments du java.exe des JVM SUN (plus quelques petits "trucs" personnels).
Les fichiers produits tombent dans un dossier à spécifier par l'utilisateur. Ce nom de dossier sera aussi utilisé pour les fichiers, avec attribution automatique d'une extension DOS spécifique.
Les lanceurs pour Macintosh sont automatiquement encodés au format MacBinary_1, ce qui permet de les créér sur un système PC et de les faire transiter sur le WEB sans risquer de corruptions. Sur Macintosh, il faudra d'abord les décoder par un utilitaire adéquat, par exemple StuffitExpander.

LauncherBuilder est utilisable comme application Java indépendante,
la méthode main() se trouvant dans la classe [ placour.LauncherBuilderFrame ].
On peut aussi obtenir le Frame depuis une autre application Java,
par appel direct du constructeur [ new placour.LauncherBuilderFrame () ].

Divers

La notion de "Projet" est ici très simplifiée, et facultative :
Il s'agit du dossier contenant toutes les classes java et les ressources, éventuellement réparties dans des sous-dossiers (attention, seul le contenu du dossier sera inclus dans l'archive éventuellement crée).
Le dossier de projet peut être spécifié par un bouton dans l'interface graphique, par un argument de la méthode main() (qui sera traité comme un path de dossier), ou par le constructeur [ new placour.LauncherBuilderFrame (File) ].

Icônes : certains types de lanceurs peuvent afficher une icône spécifique.
Deux icônes (optionnelles) sont prévues, à définir par un bouton de l'interface graphique. Format GIF 256 couleurs, tailles 32x32 et 16x16.

Limitations

C'est une version BETA ! Alors il y a certainement des grosses lacunes, des choses difficiles à comprendre, et des trucs qui ne marchent pas. Pour qu'ils soient corrigés, il faut les signaler !

En l'état actuel, les icônes ne sont utilisées que pour les lanceurs Macintosh et le code de traitement est encore simpliste : il est nécessaire que les 256 couleurs soient celles de la palette-système Macintosh (réalisable par exemple avec GraphicConverter sur Mac, PhotoShop 4 LE sur Windows...).

Options Java et propriétés : le traitement est sans doute très imparfait, car ce point n'a pas été testé ...

Télécharger le package (archive LaunchBu.zip de 102 ko, classes, codes-source et lanceurs inclus)

Écrire à l'auteur