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

API standards et tierces Java Discussion :

commapi Linux


Sujet :

API standards et tierces Java

  1. #1
    Membre averti
    Profil pro
    Consultant SI et plan de reprise d'Activités
    Inscrit en
    Avril 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant SI et plan de reprise d'Activités
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 11
    Par défaut commapi Linux
    Bonjour tt le monde,

    voilà, après avoir quelque peu galéré à installer la commapi sous windows pour communiquer via un des ports séries, je dois a présent faire la même chose sous Linux.

    Seul problème : impossible d'intégrer correctement la commapi pour l'utiliser. J'ai suivie des pseudo tutoriaux :

    http://wass.homelinux.net/howtos/Comm_How-To.shtml

    http://www.geeksville.com/~kevinh/linuxcomm.html

    et cherché dans la doc Sun mais sans résultat .

    Lorsque j'essaye de tester la BlackBox, g un message d'erreur en rapport avec le javax.comm.properties que j'ai regardé mais pas compris.

    Si quelqu'un pouvait m'aider, je lui en serais grandement reconnaissant.


    Merci d'avance pour les réponses.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 85
    Par défaut
    Salut,

    Eventuellement donnes nous l'erreur que tu as, ca va peut être parler
    à quelqu'un :-)

    a+
    Xavier

  3. #3
    Membre averti
    Profil pro
    Consultant SI et plan de reprise d'Activités
    Inscrit en
    Avril 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant SI et plan de reprise d'Activités
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 11
    Par défaut
    Ok, je donne aussi mon installation espérant que ça puisse aider.

    // Je copie tout d'abord la librairie pour pouvoir utiliser le port série

    [root@localhost rxtx-2.0-7pre1-i686-pc-linux-gnu]# cp /home/stage/Documents/rxtx-2.0-7pre1-i686-pc-linux-gnu/librxtxSerial.so /usr/java/jdk1.5.0_06/jre/lib/i386


    // Je copie ce fichier là mais sans grande conviction

    [root@localhost rxtx-2.0-7pre1-i686-pc-linux-gnu]# cp /home/stage/Documents/rxtx-2.0-7pre1-i686-pc-linux-gnu/RXTXcomm.jar /usr/java/jdk1.5.0_06/bin


    // Je copie le fichier fourni par Sun avec la commapi

    [root@localhost jar]# cp /home/stage/Documents/commapi/jar/comm.jar /usr/java/jdk1.5.0_06/jre/lib/ext


    // Je modifie mes fichiers .sh et .csh pour que la nouvelle install fasse partie du PATH

    [root@localhost profile.d]# kwrite j2re-1.5-perso.sh
    [root@localhost profile.d]# kwrite j2re-1.5-perso.csh


    // Contenu du .sh :

    #!/bin/bash JAVA_HOME="/usr/java/jdk1.5.0_06"
    export
    JAVA_HOME
    PATH="$PATH:$JAVA_HOME/jre/bin"
    export
    PATH
    PATH="$PATH:$JAVA_HOME/bin"
    export
    PATH
    CLASSPATH="$PATH:$JAVA_HOME/lib/tools.jar"
    export
    CLASSPATH
    CLASSPATH="$PATH:$JAVA_HOME/bin/comm.jar"
    export
    CLASSPATH


    // Contenu du .csh :

    setenv JAVA_HOME "/usr/java/jdk1.5.0_06"
    setenv PATH "$PATH:$JAVA_HOME/jre/bin"
    setenv PATH "$PATH:$JAVA_HOME/bin"
    setenv CLASSPATH "$PATH:$JAVA_HOME/lib/tools.jar"
    setenv CLASSPATH "$PATH:$JAVA_HOME/bin/comm.jar"


    // Je copie le javax.comm.properties au bon endroit :

    [root@localhost docs]# cp /home/stage/Documents/commapi/docs/javax.comm.properties /usr/java/jdk1.5.0_06/jre/lib


    // Je redémarre pour que les nouveaux paramètres soit bien pris en compte puis je teste les nouveaux composants installés mais :


    [root@localhost jar]# java -classpath BlackBox.jar:$CLASSPATH BlackBox

    Exception in thread "main" java.lang.NoClassDefFoundError: BlackBox



    Voilà, si quelqu'un peut m'aider avec tous ce que je viens de donner, je l'en remercie d'avance (l'installation est un genre de compromi de celles disponible aux adresses de mon premier message)

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 85
    Par défaut
    Salut,

    Heu si tu as cette erreur :
    Exception in thread "main" java.lang.NoClassDefFoundError: BlackBox

    C'est qu'il ne trouve même pas ta classe BlackBox déjà.
    Vérifies que BlackBox.jar est dans ton répetoire d'exécution ou que le
    nom de la classe est correcte... les packages aussi si il y en a, etc...

    a+
    Xavier

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 85
    Par défaut
    re salut,

    Autre chose, tu devrais mettre le bon PATH pour ton jdk :

    ton code:
    export JAVA_HOME PATH="$PATH:$JAVA_HOME/jre/bin"

    moi je metterais :

    export JAVA_HOME PATH="$PATH:$JAVA_HOME/bin"

    en supprimant le jre car il te faut le JDK et pas le JRE d'ou ton prolème
    avec le jar peut être...

    a+
    Xavier



  6. #6
    Membre averti
    Profil pro
    Consultant SI et plan de reprise d'Activités
    Inscrit en
    Avril 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant SI et plan de reprise d'Activités
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 11
    Par défaut
    Citation Envoyé par xfacq
    re salut,

    Autre chose, tu devrais mettre le bon PATH pour ton jdk :

    ton code:
    export JAVA_HOME PATH="$PATH:$JAVA_HOME/jre/bin"

    moi je metterais :

    export JAVA_HOME PATH="$PATH:$JAVA_HOME/bin"

    en supprimant le jre car il te faut le JDK et pas le JRE d'ou ton prolème
    avec le jar peut être...

    a+
    Xavier


    ben ds le tutorial que j'avais, il fallais mettre le fichier comme ceci. Le PATH pointe et vers le jre et vers le jdk.

    Penses-tu que ça puisse poser problème ?

    Autre chose, j'ai refais mon installation en mettant comm.jar dans /usr/javajdk/lib et le fichier .so (équivalent dll sous windows si j'ai bien compris) dans /lib.

    J'ai aussi refait mon CLASSPATH car comme il était fait, l'ajout de comm.jar écraser celle de tools.jar, ce qui donne maintenant un truc du style :

    CLASSPATH="$CLASSPATH:$JAVA_HOME/lib/tools.jar"
    export
    CLASSPATH
    CLASSPATH="$CLASSPATHPATH:$JAVA_HOME/bin/comm.jar"
    export
    CLASSPATH


    (J'ai aussi modifié le .csh en conséquent)

    Maintenant, mon message d'erreur n'est plus le même , lors de la tentative de lancement de la BlackBox, j'obtiens ceci :

    [stage@localhost BlackBox]$ java -classpath BlackBox.jar:$CLASSPATH BlackBox
    javax.comm: Error loading javax.comm.properties!
    null

    java.io.IOException: javax.comm: platform driver class name = null
    (Check 'driver' property in javax.comm.properties)

    at javax.comm.CommPortIdentifier.loadDriver(CommPortIdentifier.java:244)
    at javax.comm.CommPortIdentifier.<clinit>(CommPortIdentifier.java:109)
    at BlackBox.main(Unknown Source)
    Exception in thread "main" java.lang.UnsatisfiedLinkError: isSessionActive
    at com.sun.comm.SunrayInfo.isSessionActive(Native Method)
    at com.sun.comm.Portmapping.registerCommPorts(Portmapping.java:155)
    at com.sun.comm.Portmapping.refreshPortDatabase(Portmapping.java:100)
    at javax.comm.CommPortIdentifier.<clinit>(CommPortIdentifier.java:138)
    at BlackBox.main(Unknown Source)

    [1]+ Stopped java -classpath BlackBox.jar:$CLASSPATH BlackBox

    Pourtant le fichier javax.comm.properties est au bon endroit (enfin il me semble, d'après ce que dis sun).

    Et toujours, merci d'avance pour les réponses.

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 85
    Par défaut on avance
    re,

    Essayes de mettre ton comm.jar dans le répertoire lib du jdk (au
    meme endroit que tools.jar), voir même dans ton répertoire lib à toi.

    Concernant la syntaxe du CLASSPATH tu devrais plutôt mettre sans les guillemets :

    CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/comm.jar:BlackBox.jar
    export CLASSPATH

    D'ailleur, je suis pas sure que l'inclusion de tools.jar soit vraiment nécessaire...

    Pour le fichier qu'il ne trouve pas il faut vérifier si il faut pas le passer en parametre à java par hasard, genre un truc comme :

    -DUN_CERTAIN_NOM=/repertoire/rep/
    javax.comm.properties

    Vue l'erreur, vérifies aussi que la propriété driver est renseigné correctement :
    java.io.IOException: javax.comm: platform driver class name = null
    (Check 'driver' property in javax.comm.properties)

    Voilà, bon courrage
    a+
    Xavier

  8. #8
    Membre averti
    Profil pro
    Consultant SI et plan de reprise d'Activités
    Inscrit en
    Avril 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant SI et plan de reprise d'Activités
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 11
    Par défaut
    ça ne donne pas grand chose de mieux.

    Est-ce que quelqu'un aurait une autre solution ou voit d'où pourrait venir le problème ?

    merci.

  9. #9
    Membre averti
    Profil pro
    Consultant SI et plan de reprise d'Activités
    Inscrit en
    Avril 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant SI et plan de reprise d'Activités
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 11
    Par défaut
    J'ai finalement réussi à régler mon problème. J'ai pour celà refait l'installation que je cais décrire un peu plus bas.

    L'installation décrite à été réalisé sous Linux Mandriva 2006 avec Java (jre et jdk) installé de la sorte : /usr/java/jdk et /usr/java/jdk/jre. L'installation ne necessite plus l'ajout de la lib RXTX étant donné qu'un lib est fourni avec la version 3.0 de la commapi

    Pour commencer, télécharger les drivers de la commapi disponible sur le site de sun (commapi 3.0 update 1 lors de la rédaction de ce message) à l'adresse suivante :

    http://www.sun.com/download/product.xml?id=43208d3d

    Une fois télécharger, dézipper le fichier, vous devez normalement avoir à l'intérieur de celui ci un dossier docs, un examples, un jar et un lib.

    Commencer par copier le fichier libLinuxSerialParallel.so dans le répertoire /usr/lib.

    Ensuite, copier le fichier comm.jar dans /usr/java/jdk/lib ainsi que dans /usr/java/jdk/jre/lib. Copier aussi le fichier javax.comm.properties dans le répertoire /usr/java/jdk.

    Il faut maintenant mettre en place le PATH et le CLASSPATH, pour celà, j'ai créer deux fichier dans le répertoire /etc/profile.d nommés :
    - j2re-1.5-perso.sh
    - j2re-1.5-perso.csh

    Contenu du .sh :

    #!/bin/bash
    JAVA_HOME="/usr/java/jdk1.5.0_06"
    export JAVA_HOME
    PATH=$PATH:$JAVA_HOME/jre/bin:$JAVA_HOME/bin:$JAVA_HOME/lib
    export PATH
    CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/comm.jar
    export CLASSPATH


    Contenu du .csh :

    setenv JAVA_HOME "/usr/java/jdk1.5.0_06"
    setenv PATH "$PATH:$JAVA_HOME/jre/bin"
    setenv PATH "$PATH:$JAVA_HOME/bin"
    setenv PATH "$PATH:$JAVA_HOME/bin"
    setenv CLASSPATH "$CLASSPATH:$JAVA_HOME/lib/tools.jar"
    setenv CLASSPATH "$CLASSPATH:$JAVA_HOME/lib/comm.jar"

    Les fichiers sont bien entendu écrit en fonction de mes répertoire d'installation. Penser à modifier les chemins d'accès.

    Voilà, maintenant se placer dans répertoire commapi/examples/BlackBox pour un test en ligne de commande et faire :

    java -Djava.library.path=/usr/lib BlackBox

    Le programme BlackBox devrait normalement se lancer.


    Voilà, j'espère que celà pourra aider certaines personnes. Je suis conscient que mon installation est loin d'être parfaite donc si quelqu'un veut apporter une voire des précision(s) notamment sur mes fichiers .sh et .csh ainsi que sur la ligne de commande de la BlackBox (car s'il n'y pas pas besoin de donner un paramètre dans la commande, je pense que celà pourrait être pratique)

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

Discussions similaires

  1. Débat : quelle distribution Linux choisir pour débuter ?
    Par Anonymous dans le forum Distributions
    Réponses: 227
    Dernier message: 18/02/2015, 10h09
  2. [Kylix] Re Re: débutant sur Kylix et Linux.....
    Par Eclypse dans le forum EDI
    Réponses: 2
    Dernier message: 08/06/2002, 22h53
  3. [Kylix] Le débutant en Kylix et Linux....
    Par Eclypse dans le forum EDI
    Réponses: 2
    Dernier message: 08/05/2002, 10h37
  4. OmniORB : code sous Windows et Linux
    Par debug dans le forum CORBA
    Réponses: 2
    Dernier message: 30/04/2002, 17h45
  5. Je ne peux établir une connexion cliente sous Linux.
    Par Anonymous dans le forum CORBA
    Réponses: 5
    Dernier message: 16/04/2002, 15h57

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