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

Eclipse C & C++ Discussion :

Débugger du code C appelé par Java JNI (appli web)


Sujet :

Eclipse C & C++

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2007
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 53
    Points : 37
    Points
    37
    Par défaut Débugger du code C appelé par Java JNI (appli web)
    Bonjour à tous,

    Je souhaite débugger une appli web développée en Java sous Eclipse (3.4.2 Ganymède), et qui utilise JNI pour faire appel à du code C.
    Le but est d'arriver à débugger jusque dans le C.

    Les technos : client riche (Eclipse RCP), serveur JBoss.
    J'ai aussi le plugin CDT pour pouvoir ouvrir les fichiers C.

    J'arrive à entrer dans le Java : Debug Configuration > Java Remote Application.

    Pour entrer dans le C, j'ai essayé de mettre le code C dans un projet C à part, puis de créer une Debug Configuration en tant que C/C++ Attach to Local Application, mais je ne vois pas le process Java auquel attacher le C (certainement dû à l'architecture client/serveur ?).

    J'ai aussi essayé, après recherche sur internet, de créer un projet C dans Visual C++, mais idem, impossible de le rattacher à un process Java au moment de débugger.
    Mais peut-être que je m'y prends mal...

    Voilà, je débute donc il manque probablement des infos, n'hésitez pas à demander, j'essaierai de répondre !

    Merci d'avance pour votre aide.

  2. #2
    Nouveau membre du Club
    Inscrit en
    Juin 2007
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 53
    Points : 37
    Points
    37
    Par défaut
    Etant donné que personne ne semble avoir de solution, j'ai légèrement changé de stratégie :

    - Je lance Eclipse directement sur le serveur JBoss sous Linux, dans l'espoir de limiter les problèmes client/serveur.

    - Dans Eclipse, j'ai l'ensemble de mes projets Java, pour lesquels j'ai créé une configuration de débug, via Debug Configuration > Java Remote Application, et dans laquelle j'indique l'adresse IP du serveur et le port.

    - J'ai créé un projet C, toujours dans Eclipse, où j'ai copié mes sources. J'arrive à le compiler, si besoin.
    Pour ce projet C, j'ai créé une autre config de debug (C/C++ Attach to Local Application), en pointant vers le .so utilisé (non généré par moi), et en indiquant que les sources sont dans mon projet C.

    Pour lancer :

    1. Lancement du serveur JBoss -> Récup PID.
    2. Lancement de la config de Debug Java. Breakpoint après le chargement de la librairie C.
    3. Lancement du Client (sous Windows).
    4. Arrêt au breakpoint 2.
    5. Lancement de la config de Débug C, attachement au PID récupéré en 1.
      Il y a un warning :
      shared library handler failed to enable breakpoint. (call_gmon_start())
    6. Actions sur le client... Ne s'arrête pas aux breakpoints placés dans le C (ceux dans le Java, c'est OK).


    Voilà, toute idée est bienvenue

    Merci !

Discussions similaires

  1. Lecture de code-barres sur mobile dans une appli web
    Par Lino Léum dans le forum Mobiles
    Réponses: 0
    Dernier message: 05/01/2012, 10h21
  2. stored procedure sur AS400 appelée par Java
    Par annstger dans le forum DB2
    Réponses: 7
    Dernier message: 04/10/2011, 19h12
  3. Debug code C appelé par du Java
    Par alf66 dans le forum Eclipse C & C++
    Réponses: 2
    Dernier message: 09/03/2011, 12h05
  4. Appel d'une autre appli Web
    Par Mamours dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 25/07/2007, 10h28

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