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

Entrée/Sortie Java Discussion :

[JNI] Compatibilité de types


Sujet :

Entrée/Sortie Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de rabobsky
    Inscrit en
    Novembre 2003
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 123
    Par défaut [JNI] Compatibilité de types
    Bonjour,

    je cherche depuis un certain temps à résoudre un probème de compatibilité par rapport au JNI.

    J'ai un projet que j'essaie de compiler mais j'ai l'erreur suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    JNI/JSpice.c: In function `Java_src_0002fde_mpg_mpi_1hd_jspice_JSpice_str2et':
    JNI/JSpice.c:243: error: incompatible types in return
    JNI/JSpice.c: In function `Java_src_0002fde_mpg_mpi_1hd_jspice_JSpice_utc2jd':
    JNI/JSpice.c:275: error: incompatible types in return
    et donc dans mon fichier JSpice.c les entetes de ces fonctions sont :
    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
     
    .........
    JNIEXPORT jdouble JNICALL 
    Java_src_0002fde_mpg_mpi_1hd_jspice_JSpice_str2et 
    (JNIEnv *env, jclass obj, jstring jStr)
    {
    ............
    }
    ......
    JNIEXPORT jdouble JNICALL 
    Java_src_0002fde_mpg_mpi_1hd_jspice_JSpice_utc2jd
    (JNIEnv *env, jclass obj, jstring jUTC)
    {
    ....
    }
    et dans mon fichier JSpice.h j'ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    JNIEXPORT jdouble JNICALL Java_src_0002fde_mpg_mpi_1hd_jspice_JSpice_str2et
      (JNIEnv *, jclass, jstring);
    ....
    JNIEXPORT jdouble JNICALL Java_src_0002fde_mpg_mpi_1hd_jspice_JSpice_utc2jd
      (JNIEnv *, jclass, jstring);
    je ne sais pas du tout comment résoudre ce problème de typage, pour java double est un objet... et pour C non...

    un coup de main SVP.

    MERCI

  2. #2
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,


    Pourtant dans le fichier jni.h, le type jdouble n'est qu'une redéfinition de double :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    typedef double		jdouble;
    Est-tu sûr de bien renvoyer un double ????

    a++

  3. #3
    Membre confirmé Avatar de rabobsky
    Inscrit en
    Novembre 2003
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 123
    Par défaut
    OUI oui, ce code marchait (il parait) sous Mac... et en passant sous linux il y des probs... j'ai changé seulement les entetes de fonctions .... donc les fonctions restent les memes....

    Je ne comprends vraiment pas.

    Merci de ton coup de main

  4. #4
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par rabobsky
    j'ai changé seulement les entetes de fonctions .... donc les fonctions restent les memes....
    Qu'est-ce que tu as changé dans les entêtes ???

  5. #5
    Membre confirmé Avatar de rabobsky
    Inscrit en
    Novembre 2003
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 123
    Par défaut
    j'ai changé les string en Jstring, et les jobject en jclasse... et aussi modifié le nom de la fonction qui le requiérait (pour les autres fonctions ca marche.) il n'y a que pour les jdouble que ca ne marche pas

  6. #6
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Tu as bien généré les fichiers *.h avec javah ???

    Sinon montre nous la déclaration de ta méthode dans le fichier Java, du fichier *.h et le code de la méthode qui provoque l'erreur...

    a++

  7. #7
    Membre confirmé Avatar de rabobsky
    Inscrit en
    Novembre 2003
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Novembre 2003
    Messages : 123
    Par défaut
    Je suis bien un NB.... je ne comprends pas pourquoi j'avais un problème : mon erreur venait du fait que ma fonction renvoyait un au lieu de Ce n'est pas compréhensible pour moi (surtout que ca marche sous MAC)... Si quelqu'un peut m'expliquer j'en serais très content sinon, mon problème est Résolu.

    En tout cas, Merci beaucoup adiGuba!!!

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

Discussions similaires

  1. [DLL C++] Compatibilité de type avec Delphi
    Par almoude dans le forum API, COM et SDKs
    Réponses: 5
    Dernier message: 28/10/2011, 14h49
  2. #N/A integer et string: erreur de compatibilité de types
    Par Many31 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 25/01/2008, 14h51
  3. Problème de compatibilité de types avec Delphi et SQLServer
    Par scrat88 dans le forum Bases de données
    Réponses: 2
    Dernier message: 22/05/2006, 11h31
  4. [JNI] type des arguments de NewObject ?
    Par JujuTh dans le forum Entrée/Sortie
    Réponses: 1
    Dernier message: 19/05/2006, 17h45
  5. Plusieurs input de type image et compatibilité navigateurs
    Par sovitec dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 12/12/2005, 11h20

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