web-dev-qa-db-fra.com

Comment créer un programme Java)?

J'ai programmé un programme Java dans JCreator, tout est fait, mais je veux créer un fichier exécutable à partir de celui-ci, c’est-à-dire que je ne veux pas avoir à exécuter le programme en chargeant le Java classes et compilation puis exécution, mais au lieu de cela comme fichier exécutable autonome.

Quel est le moyen le plus rapide de faire cela?

53
Java

Vous pouvez utiliser le outil jar fourni avec le SDK et créer une version exécutable du programme.

Voici comment c'est fait.

Je publie les résultats à partir de mon invite de commande parce que c'est plus facile, mais la même chose devrait s'appliquer lors de l'utilisation de JCreator.

Commencez par créer 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, affiche simplement une fenêtre avec "Hello World"

Puis compilez-le:

$javac -d . HelloWorldSwing.Java

Deux fichiers ont été créés dans le dossier "start" Dummy.class et HelloWorldSwing.class .

$ls start/
Dummy.class     HelloWorldSwing.class

Prochaine étape, créer le fichier jar. Chaque fichier jar contient un fichier manifeste, contenant les attributs associés au fichier exécutable.

Ceci est le contenu de mon fichier manifeste.

$cat manifest.mf
Main-class: start.HelloWorldSwing

Décrivez simplement ce qu'est la classe principale (celle avec la méthode principale publique statique statique)

Une fois que le manifeste est prêt, l'exécutable jar est appelé.

Il a beaucoup d'options, ici j'utilise -c -m -f (-c pour créer jar, -m pour spécifier le fichier 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 double-cliquer sur ce fichier et il fonctionnera comme prévu.

enter image description here

Pour créer le fichier .jar dans JCreator, il vous suffit d'utiliser le menu "Outils", de créer un fichier jar, mais je ne suis pas sûr de la manière dont le manifeste y est envoyé.

Voici une vidéo que j'ai trouvée à propos de: Créer un fichier Jar dans Jcreator .

Je pense que vous pouvez continuer avec les autres liens postés dans ce fil une fois que vous êtes familiarisé avec cette approche ".jar".

Vous pouvez également utiliser jnlp (Java Network Launcher Protocol) également.

64
OscarRyz

Si vous utilisez Eclipse, vous pouvez suivre les 7 étapes ci-dessous pour obtenir un fichier .exe pour Windows.

step1step2step3

Vous avez maintenant un fichier JAR. Utilisez Java -jar chemin/jarname.jar à exécuter.

enter image description here


Si vous voulez convertir ceci en .exe, vous pouvez essayer http://sourceforge.net/projects/launch4j/files/launch4j-3/

STEP5STEP6

STEP7: Attribuez un nom approprié au fichier .xml et cliquez sur "Enregistrer". Le fichier .xml est standard, ne vous inquiétez pas. Votre fichier exécutable va maintenant être créé!

17
Jaskey

Je ne suis pas tout à fait sûr de ce que vous voulez dire.

Mais je suppose que vous voulez dire 1 ou 2 choses.

  • Vous voulez créer un fichier .jar exécutable

Eclipse peut le faire très facilement. Fichier -> Exporter, créer un fichier jar, sélectionner la classe principale appropriée et générer le fichier .jar pour vous. Dans Windows, vous devrez peut-être associer .jar à l'exécution Java. Aka Maintien enfoncé, clic droit "ouvrir avec", naviguez jusqu'à votre jvm et associez-le à javaw.exe.

  • créer un fichier .exe réel, vous devez utiliser une bibliothèque supplémentaire comme

http://jsmooth.sourceforge.net/ ou http://launch4j.sourceforge.net/ créera un fichier de remplacement .exe natif avec une icône Nice qui sera essentiellement = bootstrap votre application. Ils déterminent même si votre client n’a pas de machine virtuelle Java installée et vous invitent à en obtenir une.

12
danswain

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 fichier META-INF, il existe un fichier appelé MANIFEST.MF, ouvrez-le dans un éditeur de texte et ajoutez la ligne suivante:

Main-Class: [fully qualified name of your main class]

puis utilisez cette commande:

Java -jar [name of jar file]

et votre programme fonctionnera :)

5
ForYourOwnGood

Jexecutable peut créer Windows exe pour les programmes Java. Il intègre les fichiers jar dans un fichier exe et vous pouvez l'exécuter comme un programme Windows.

3
Joe

Jetez un oeil à WinRun4J . C'est seulement Windows mais c'est parce qu'Unix a des scripts exécutables qui ressemblent (à l'utilisateur) à des bacs. Vous pouvez également facilement modifier WinRun4J pour compiler unix.

Il nécessite un fichier de configuration, mais encore une fois, recompilez-le avec des options codées en dur et cela fonctionne comme un fichier exe sans configuration.

3
KitsuneYMG

Vous pouvez utiliser GCJ pour compiler votre Java) programme en code natif.
À un moment donné, ils ont même compilé Eclipse en un version native .

2
lothar

Java Web Start est une bonne technologie pour installer Java clients riches directement sur Internet directement sur le bureau de l'utilisateur final (que le système d'exploitation soit Windows, Mac ou * nix). Il est fourni avec mises à jour automatiques, parmi beaucoup d'autres goodies.

Pour plus d'informations sur JWS, reportez-vous à la section page d'informations sur JWS .

1
Andrew Thompson

Écrivez un script et rendez-le exécutable. Le script devrait ressembler à ce que vous utiliseriez normalement en ligne de commande:

Java YourClass

Cela suppose que vous avez déjà compilé vos fichiers .Java et que le Java peut trouver vos fichiers .class. Si Java ne peut pas trouver vos fichiers .class, vous voudrez peut-être utiliser l’option -classpath ou définir votre variable d’environnement CLASSPATH.

1
allyourcode

Jetez un oeil à launch4j

1
Maurice Perry

Comme suggéré précédemment, vous pouvez également consulter launch4j pour créer le fichier exécutable de votre fichier JAR. En outre, il existe quelque chose appelé "JExePack" qui peut placer un wrapper .exe 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 ordinateur). Les exes créés avec GCJ ne le seront pas. avoir cette dépendance, mais le processus est un peu plus impliqué.

0
Vini