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?

48
demandé sur nhahtdh 2009-04-30 01:59:55

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

enter image description here

vous pouvez ensuite simplement double-cliquer sur ce fichier et il s'exécutera comme prévu.

enter image description here

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 ).

57
répondu OscarRyz 2015-07-27 18:30:38

si vous utilisez Eclipse , vous pouvez essayer les 7 étapes ci-dessous pour obtenir un .le fichier exe pour Windows.

step1 step2 step3

Maintenant vous avez un fichier JAR. L'utilisation de java -jar chemin/jarname.pot à exécuter.

enter image description here


si vous voulez convertir ceci en .exe, tu peux essayer http://sourceforge.net/projects/launch4j/files/launch4j-3/

STEP5 STEP6

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éé!

14
répondu Jaskey 2016-03-28 06:06:36

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.

11
répondu danswain 2009-04-29 23:40:48

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é:)

5
répondu ForYourOwnGood 2009-04-29 23:17:35

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.

3
répondu KitsuneYMG 2009-04-29 23:59:10

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.

3
répondu Joe 2012-08-06 04:23:58

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 .

2
répondu lothar 2009-04-29 23:34:35

É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.

1
répondu allyourcode 2009-04-29 22:11:36

regardez launch4j

1
répondu Maurice Perry 2009-04-29 23:38:07

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 .

1
répondu Andrew Thompson 2017-05-23 11:47:32

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é.

0
répondu Vini 2009-04-29 23:57:51

si vous utilisez NetBeans, vous appuyez simplement sur f11 et votre projet sera construit. Le chemin par défaut est projectfolder\dist

-1
répondu Bashkim Meka 2014-06-06 00:28:34