IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Créer un exécutable en Java


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Informatique
    Inscrit en
    Mars 2012
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Informatique

    Informations forums :
    Inscription : Mars 2012
    Messages : 34
    Par défaut Créer un exécutable en Java
    Bonjour,

    Je cherche à transformer des programmes Java en exécutable.
    Problème : cela fait déjà plusieurs jours voire deux mois au moins que je cherche à faire ça. J'ai essayé une dizaine de programmes sur Internet,j'ai essayé d'écrire des dizaines de fichier Manifest mais je n'ai rien compris !
    Je n'arrive pas.

    Quelqu'un pourrait m'aider s'il vous plaît ?

    Cordialement.

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    dans ton jar, tu dois avoir un META-INF/MANIFEST.MF, tu dois avoir une entrée

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Main-Class: ton.package.ClasseMain
    Bien sur, tes classes doivent aussi s'y trouver.

    Et c'est tout ce qui est nécessaire.

    Pour créer le jar en lui même, t'as le choix entre ton IDE, des outils comme winzip, winrar, etc ou en ligne de commande via l'application "jar" du jdk.

  3. #3
    Membre averti
    Homme Profil pro
    Informatique
    Inscrit en
    Mars 2012
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Informatique

    Informations forums :
    Inscription : Mars 2012
    Messages : 34
    Par défaut
    Bonjour,

    C'est le fichier .java ou le fichier .class qui va être dans mon jar ?
    Pour que les accents passent, il y a une solution ?
    On ne doit mettre qu'une ligne dans le fichier MANIFEST ?
    Je n'ai pas compris en fait à quoi correspond le ton.package ....
    Je ne comprends pas ce qu'est META-INF/.

    Merci beaucoup. Bon Weekend !

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par Étienne9 Voir le message
    Bonjour,

    C'est le fichier .java ou le fichier .class qui va être dans mon jar ?
    Ben les classes, ton utilisateur ne sait rien faire des sources en général
    Pour que les accents passent, il y a une solution ?
    Dans les noms de classes? Ce n'est pas recommandé, c'est souvent le bordel avec l'OS sous jacent. Mais a priori ca ne devrait pas poser de problème majeur dans un jar.
    On ne doit mettre qu'une ligne dans le fichier MANIFEST ?
    une seule suffit, mais on peux mettre beaucoup de chose dans le manifeste
    Je n'ai pas compris en fait à quoi correspond le ton.package ....
    http://baptiste-wicht.developpez.com...rves/#Lpackage

    Je ne comprends pas ce qu'est META-INF/.
    Le MANIFEST.MF se trouve dans le dossier META-INF/ dans le jar

  5. #5
    Membre émérite Avatar de JoeChip
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    536
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 536
    Par défaut
    Depuis Eclipse, tu fais "File / Export... / Java / Runnable JAR file".

    Sinon, apparemment il y a des choses que tu ne comprend pas dans les bases même de la programmation. Les .java, ce sont les sources du programmes, ce que tu écris et qui est en clair. Cela est transformé en code compréhensible par la machine virtuelle Java, en pseudo-code, sous forme de fichier .class

    C'est cela qui est exécutable par la JVM, donc c'est ce qui doit se trouver dans le .jar.

    Sinon toute la doc pour faire une .jar exécutable est très évidemment disponible sur le web.

  6. #6
    Membre averti
    Homme Profil pro
    Informatique
    Inscrit en
    Mars 2012
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Informatique

    Informations forums :
    Inscription : Mars 2012
    Messages : 34
    Par défaut
    Je parlais des accents dans le code, je sais très bien que dans les noms ça pose problème...

    Mon fichier Manifest sachant qu'il se trouve dans un dossier META-INF à la racine de mon fichier class:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Main-Class: Etienne.bintonum
    Mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    package Etienne.bintonum;
     
    import java.util.Scanner;
    import java.lang.String;
     
    public class bintonum
    	{
    		public static void main (String[ ] args) 
    		{
    			int i, result, a;
    			String resultch;
    			char[] tab;
    			System.out.println("Donner un chiffre ou un nombre binaire");
    			result = (new Scanner(System.in)) .nextInt();
    			resultch = result + "";
    			tab = new char[resultch.length()];
    			tab = resultch.toCharArray();
    			result = 0;
    			resultch = "";
    			for (i=tab.length-1;i>=0;i--) {
    				a = Integer.parseInt(tab[i] + "");
    				result =  (int) (result + a * Math.pow(2,tab.length-1-i));
    			}
    			System.out.println(result);
    		}
    }
    Commande dans cmd :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    jar cvmf META-INF\MANIFEST.MF bintonum.jar bintonum.class
    Je ne comprends toujours pas pourquoi ça ne marche pas....

  7. #7
    Membre émérite Avatar de JoeChip
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    536
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 536
    Par défaut
    Aucune idée, je ne le fais jamais à la main.

  8. #8
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Ca devrait être

    jar cvmf META-INF\MANIFEST.MF bintonum.jar Etienne

    dans ton cas. C'est tout le package Etienne qu'il faut faire rentrer. Il faut que au final dans le jar, ton .class soit bien dans l'entrée Etienne/bintonum/bintonum.class

    Aussi, corrige ton code. Un package doit commencer par des minuscules, une classe par une majuscule!

    Pour les accents dans le code, il faut que tu dise à ton compilateur d'utiliser le même encodage que celui utilisé pour créer le fichier .java

    Par exemple

    si ton .java est en utf-8

Discussions similaires

  1. Problème pour créer un VBS exécutant du java.
    Par makayel dans le forum VBScript
    Réponses: 5
    Dernier message: 09/08/2013, 21h32
  2. créer un exécutable en java sous linux
    Par az_am dans le forum Débuter avec Java
    Réponses: 8
    Dernier message: 31/08/2009, 17h17
  3. Créer un exécutable en java
    Par nypahe dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 19/03/2009, 21h01
  4. Créer un exécutable Java
    Par canada_bea dans le forum Débuter avec Java
    Réponses: 5
    Dernier message: 08/03/2008, 16h00
  5. java créer un exécutable
    Par damned3 dans le forum EDI et Outils pour Java
    Réponses: 4
    Dernier message: 02/09/2006, 03h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo