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

Java Discussion :

Exécution java -jar


Sujet :

Java

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Avril 2014
    Messages : 78
    Points : 47
    Points
    47
    Par défaut Exécution java -jar
    Bonjour a tous

    voila j'ai fini mon application java je la test sa marche nickel mais une fois Build y a un petit Hic.

    quand j’exécute mon application appli\dist\appli.jar : elle ce lance normal mais j'ai un bouton qui Recherche des PortsSeries valable sur le pc il trouve Rien !!!

    en revanche si je lance mon appli en cmd> Java -jar appli\dist\appli.jar : la tous fonctionne normal

    j'ai re Build mon projet en compilant avec -Xlint:unchecked
    je reçois un warning du genre : warning: [unchecked] unchecked call to put(K,V) as a member of the raw type java.util.HashMap portMap.put(curPort.getName(), curPort); 1 warning

    voiçi ma methode :

    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
     
     
        public Enumeration ports = null;
     
        public HashMap portMap = new HashMap();
    public void searchForPorts()
        {
     
            ports = CommPortIdentifier.getPortIdentifiers();
     
            while (ports.hasMoreElements())
            {
                CommPortIdentifier curPort = (CommPortIdentifier)ports.nextElement();
     
                //get only serial ports
                if (curPort.getPortType() == CommPortIdentifier.PORT_SERIAL)
                {
     
                    window.cboxPorts.addItem(curPort.getName());
                    portMap.put(curPort.getName(), curPort);
                }
            }
        }

    c'est quoi le problème a votre avis ?

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 552
    Points : 21 608
    Points
    21 608
    Par défaut
    Probablement le répertoire en cours.

    Si tu cherches des ports séries tu utilises forcément une bibliothèque dédiée à la gestion des ports séries, et où trouver cette bibliothèque devrait logiquement être indiqué quelque part dans le manifest de ton .jar. Sous forme d'un chemin relatif. Relatif au répertoire en cours. Si c'est pas le bon il trouvera pas la bibliothèque de gestion des ports com et ça ne marchera pas.

    Une idée pour y voir plus clair serait de logger dans un fichier les exceptions rencontrées. Une idée serait de toujours faire ça quoi qu'il arrive, avant de penser à faire autre chose. Aussi incroyable que ça puisse paraître, tous ces messages d'erreur très sophistiqués existent en fait pour une raison.

    Citation Envoyé par samybelarbi Voir le message
    quand j’exécute mon application appli\dist\appli.jar
    ... Ça... Veut rien dire, on est bien d'accord ? Moi quelqu'un me dit ça je comprends qu'il a tapé java -jar appli\dist\appli.jar dans une console, mais apparemment ce n'est pas le cas puisque c'est exactement la prochaine chose que tu décris.
    Donc, cette application a été lancée comment ? Tu tapes quoi, où ça, tu cliques sur quoi, et comment c'est arrivé là ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Avril 2014
    Messages : 78
    Points : 47
    Points
    47
    Par défaut
    Citation Envoyé par thelvin Voir le message
    quand j’exécute mon application appli\dist\appli.jar

    je veux dire que je double clique sur le Jar tt simplement


    ou es ce que je peux spécifier le chemin relatif a ma librarie RXTXcomm

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 552
    Points : 21 608
    Points
    21 608
    Par défaut
    Nulle part. Fais un raccourci qui lance la commande et indique le répertoire d'exécution, au lieu de juste double-cliquer sur le fichier .jar.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Avril 2014
    Messages : 78
    Points : 47
    Points
    47
    Par défaut
    Sa marche nickel avec le raccourci , mais j'aimerais bien savoir pourquoi sa ne marche pas juste en double cliquant ???

  6. #6
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 552
    Points : 21 608
    Points
    21 608
    Par défaut
    Comme j'ai déjà dit, je pense que ça a à voir avec le répertoire en cours.
    Java, lorsqu'on l'installe sous Windows, rend le service - enfin, du coup, est-ce que ça rend vraiment service ? - d'associer les fichiers *.jar au fait d'être lancé comme une appli Java.

    Là, j'avoue que je suis pas expert en fonctionnement de Windows, pas faute d'essayer d'ailleurs, mais c'est toujours une joie pour un informaticien, quand on a une question simple sur le fonctionnement de Windows, d'essayer vainement d'en trouver la réponse en un temps raisonnable...
    Bref je ne suis pas sûr, mais il semble, à propos de cette association d'extensions de fichiers :

    - qu'elle ne pense pas toute seule à lancer le programme, avec comme répertoire en cours celui où se trouve le fichier. Bon, ça se tient. Après tout l'idée c'est d'associer des *.doc à Word, donc le répertoire en cours devrait être celui de Word, pas celui du .doc.

    - qu'elle ne fournit aucun moyen de spécifier le répertoire en cours à utiliser. ... Ce qui semble a priori stupide, notamment parce qu'un cas comme le nôtre ou proche du nôtre devrait sembler évident.


    Pour résoudre ça, Java aurait dû fournir un lanceur de jars qui, pour chercher les bibliothèques référencées par le manifest d'un jar, les chercherait à partir du répertoire contenant le jar plutôt que le répertoire en cours. Ça me semble aller de soi, mais apparemment ce n'est pas ce qu'ils font.

    De toute façon ce n'est pas très important puisqu'on ne peut pas modifier l'icône d'un .jar, ce qui est une raison suffisante pour utiliser un raccourci à la place.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Java] exécution du jar de glassfish plante
    Par olivier57b dans le forum Apple
    Réponses: 3
    Dernier message: 16/12/2008, 23h27
  2. [Driver JDBC] Exécution du jar
    Par gwendo dans le forum JDBC
    Réponses: 2
    Dernier message: 15/06/2006, 15h53
  3. création exécutable depuis Jar
    Par chasse dans le forum EDI et Outils pour Java
    Réponses: 17
    Dernier message: 24/05/2006, 15h54
  4. Exécution de jar (log4j introuvable)
    Par jeje99 dans le forum Logging
    Réponses: 2
    Dernier message: 19/12/2005, 11h32
  5. Exécution java et php
    Par KinF dans le forum Développement Web en Java
    Réponses: 4
    Dernier message: 04/11/2005, 15h02

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