Comment créer un programme Java exécutable? [dupliquer]
cette question a déjà une réponse ici:
- Comment puis-je convertir mon programme Java .fichier exe? [fermé] 13 Réponses
j'ai programmé un programme Java dans JCreator, tout est fait, mais je veux créer un fichier exécutable à partir de celui-ci, i.e. Je ne veux pas avoir à exécuter le programme en chargeant les classes java et en compilant puis en exécutant, mais à la place avoir comme un seul fichier exécutable.
Quelle est la façon la plus rapide de faire cela?
12 réponses
vous pouvez utiliser l'outil jar tool fourni avec le SDK et créer une version exécutable du programme.
C'est comme ça qu'on fait.
je poste les résultats de mon invite de commande parce que c'est plus facile, mais la même chose devrait s'appliquer en utilisant JCreator.
créez D'abord votre programme:
$cat HelloWorldSwing.java
package start;
import javax.swing.*;
public class HelloWorldSwing {
public static void main(String[] args) {
//Create and set up the window.
JFrame frame = new JFrame("HelloWorldSwing");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JLabel label = new JLabel("Hello World");
frame.add(label);
//Display the window.
frame.pack();
frame.setVisible(true);
}
}
class Dummy {
// just to have another thing to pack in the jar
}
très simple, juste affiche une fenêtre avec "Hello World "
puis compilez-le:
$javac -d . HelloWorldSwing.java
deux fichiers ont été créés à l'intérieur du dossier" start Dummy.classe et HelloWorldSwing.la classe .
$ls start/
Dummy.class HelloWorldSwing.class
Prochaine étape, créer le fichier jar. Chaque fichier jar a un manifeste, où les attributs liés au fichier exécutable sont.
C'est le contenu de mon manifeste.
$cat manifest.mf
Main-class: start.HelloWorldSwing
Just décrire ce qu'est la classe principale ( celle avec la méthode publique statique vide principal )
une fois le manifeste prêt, l'exécutable jar est invoqué.
il a beaucoup d'options, ici j'utilise-c-m-F ( -c pour créer jar, -m pour spécifier le fichier de manifeste , -f = le fichier doit être nommé.. ) et le dossier que je veux jar.
$jar -cmf manifest.mf hello.jar start
cela crée le .fichier jar sur le système
vous pouvez ensuite simplement double-cliquer sur ce fichier et il s'exécutera comme prévu.
pour créer le .fichier jar dans JCreator vous avez juste à utiliser le menu "Outils", Créer jar, mais je ne suis pas sûr comment le manifeste va là.
Voici une vidéo que j'ai trouvée à propos de: créer un fichier Jar dans Jcreator .
je pense que vous pouvez poursuivre avec les autres liens affichés dans ce fil une fois que vous êtes familier avec cela ".jar " approche.
Vous pouvez également utiliser jnlp ( Java Réseau Lanceur de Protocole ).
si vous utilisez Eclipse , vous pouvez essayer les 7 étapes ci-dessous pour obtenir un .le fichier exe pour Windows.
Maintenant vous avez un fichier JAR. L'utilisation de java -jar chemin/jarname.pot à exécuter.
si vous voulez convertir ceci en .exe, tu peux essayer http://sourceforge.net/projects/launch4j/files/launch4j-3/
STEP7: Donner l' .fichier xml un nom approprié et cliquez sur "Enregistrer". Le. le fichier xml est standard, ne vous en faites pas. Votre fichier exécutable sera maintenant créé!
Je ne suis pas sûr de comprendre.
mais je suppose que vous voulez dire l'une des deux choses.
- vous voulez créer un exécutable .fichier jar
Eclipse peut faire cela très facilement Fichier --> Exporter et créer un bocal et sélectionner la classe principale appropriée et il générera le .jar pour vous. Dans windows, vous pouvez avoir à associer .jar avec le java runtime. aka Hold shift down, clic droit " Ouvrir avec" naviguez vers votre jvm et associez-le à javaw.exe
- créer un réel .exe file puis vous devez utiliser une bibliothèque supplémentaire comme
http://jsmooth.sourceforge.net / ou http://launch4j.sourceforge.net / va créer un natif .exe talon avec une belle icône qui sera essentiellement bootstrap votre application. Ils se rendent même compte si votre client n'a pas installé de JVM et vous invitent à obtenir un.
sur la ligne de commande, accédez au répertoire racine des fichiers Java que vous souhaitez rendre exécutables.
utilisez cette commande:
jar -cvf [name of jar file] [name of directory with Java files]
cela créera un répertoire appelé META-INF dans l'archive jar. Dans ce META-INF il y a un fichier appelé MANIFEST.MF, ouvrez ce fichier dans un éditeur de texte et ajoutez la ligne suivante:
Main-Class: [fully qualified name of your main class]
alors utilisez cette commande:
java -jar [name of jar file]
et votre programme sera exécuté:)
regardez WinRun4J . C'est windows seulement, mais c'est parce que unix a des scripts exécutables qui ressemblent (pour l'utilisateur) à des bins. Vous pouvez aussi facilement modifier WinRun4J pour compiler sur unix.
il ne nécessite un fichier de configuration, mais encore une fois, recompiler avec des options codées dur et il fonctionne comme un exe sans config.
Jexecutable peut créer Windows exe pour les programmes Java. Il intègre les pots dans le fichier exe et vous pouvez l'exécuter comme un programme Windows.
vous pouvez utiliser GCJ pour compiler votre programme Java en code natif.
À un certain moment, ils ont même compilé Eclipse dans une version native .
Écrire un script et le rendre exécutable. Le script devrait ressembler à ce que vous utilisez normalement en ligne de commande:
java YourClass
Cela suppose que vous avez déjà compilé votre .fichiers java et que le java pouvez trouver votre .les fichiers de classe. Si java ne peut pas trouver votre .class files, vous pouvez regarder en utilisant l'option-classpath ou en définissant votre variable D'environnement CLASSPATH.
Java Web Start est une bonne technologie pour installer des clients riches en Java sur Internet directement sur le bureau de l'utilisateur final (que le système d'exploitation soit Windows, Mac ou *nix). Il est livré complet avec intégration de bureau et mises à jour automatiques, entre autres choses.
pour plus d'information sur JWS, voir la JWS info page .
comme suggéré plus haut aussi, vous pouvez regarder launch4j pour créer l'exécutable pour votre fichier JAR. Aussi, il y a quelque chose appelé "JExePack" qui peut mettre un .exe wrapper autour de votre fichier jar afin que vous puissiez le redistribuer (note: le client aurait de toute façon besoin D'un JRE pour exécuter le programme sur son pc) Exes créé avec GCJ n'aura pas cette dépendance mais le processus est un peu plus impliqué.
si vous utilisez NetBeans, vous appuyez simplement sur f11 et votre projet sera construit. Le chemin par défaut est projectfolder\dist