Un effet secondaire intéressant de cela provoque un problème lors du démarrage des fichiers jar exécutables dans l'invite de commande.
Si vous essayez (dans une invite de commande):
jarfile.jar parameter
Pas de joie, car cela se traduit par ce qui suit (ce qui ne fonctionne pas):
javaw.exe -jar jarfile.jar parameter
Cependant, la commande suivante fonctionne:
java.exe -jar jarfile.jar parameter
Si vous modifiez l'association dans le gestionnaire de fichiers comme décrit ci-dessus pour:
"C:\Program Files\Java\j2re1.4.2_04\bin\java.exe" -jar "%1" %*
Ensuite, vous pouvez taper:
jarfile.jar parameter
dans l'invite de commande et cela fonctionnera maintenant!
EDIT: (Cependant, vous obtenez ensuite une fenêtre de console noire lorsque vous exécutez une application Java basée sur un formulaire (non console), donc ce n'est pas une solution idéale)
Si vous exécutez ces fichiers jar en double-cliquant dessus dans des fenêtres, aucun paramètre ne sera transmis, donc votre code Java doit gérer l'exception de dépassement de pile et inclure une fonction "appuyer sur une touche" à la fin ou la fenêtre disparaîtra simplement.
Afin de passer un paramètre dans Windows, vous devez créer un raccourci vers le fichier jar, qui inclut le paramètre dans la ligne cible (clic droit sur le raccourci et sélectionnez les propriétés), vous ne pouvez pas ajouter de paramètres à l'icône du fichier jar elle-même dans ce façon.
Il n'y a pas de solution unique et cohérente ici, mais vous auriez le même problème avec n'importe quelle autre application console.
Il existe une application freeware Windows appelée "bat to exe" que vous pouvez utiliser pour créer un fichier exe à partir d'un fichier .bat avec la ligne de commande appropriée. vous pouvez également incorporer le fichier jar dans l'exe avec cette application, et le faire le nettoyer lorsqu'il a fini de fonctionner, donc cela peut être une solution plus élégante.