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 Java Discussion :

Bloqué sur Eclipse Java: "source not found"


Sujet :

Eclipse Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Décembre 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 64
    Points : 39
    Points
    39
    Par défaut Bloqué sur Eclipse Java: "source not found"
    Je viens d'installer le nouveau Eclipse 3311.
    Je viens de récupérer mon application dans mon nouveau workspace.
    Et puis j'ai toutes les peines du monde avec une librairie web qui est associée à mon projet. Elle s'appelle ClientHttpRequest.java et au moment où le programme fait appel à une classe appartenant à cette librairie, je reçois le brutal message:
    "Source not found"
    et puis un bouton "Edit Source Lookup Path"
    Pourtant j'ai bien refait les liens de mon projet avec la fonction "organize imports" mais rien n'y fait. Et les aides en anglais ne mènent à rien (http://www.eclipseplugincentral.com/...ic-t-1244.html).
    Bref je suis planté.
    A l'aide!!

  2. #2
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Points : 4 314
    Points
    4 314
    Par défaut
    Tu confonds sans doute .java, .class, et .jar...

    Dans une appli web, la classe ClientHttpRequest est très fréquemment encapsulée dans une librairie (qui prend la forme d'un fichier jar). Et cette librairie ne contient que la classe, sans le fichier source associé (le fichier java).

    Moralité: le "source not found" que tu rencontres dans Eclipse est parfaitement normal. Tu utilises les fonctionnalités d'une classe d'une librairie dont tu n'as pas les sources. Ca ne veut absolument pas dire que ton projet n'est pas correct.
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  3. #3
    Nouveau membre du Club
    Inscrit en
    Décembre 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 64
    Points : 39
    Points
    39
    Par défaut
    Bon je récapitule, le .java c'est la source et je la vois dans mon projet et je lis même dans mon main, la ligne:
    import javatools.ClientHttpRequest;
    Dois-je comprendre de ton message que je dois aussi faire un lien avec une librairie c'est à dire un .jar?

  4. #4
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Points : 4 314
    Points
    4 314
    Par défaut
    Citation Envoyé par EnRadeSurEclipse Voir le message
    Bon je récapitule, le .java c'est la source et je la vois dans mon projet
    Il est étonnant que tu aies la source de ClientHttpRequest dans ton projet, mais bon, pourquoi pas...

    Citation Envoyé par EnRadeSurEclipse Voir le message
    et je lis même dans mon main, la ligne: import javatools.ClientHttpRequest;
    Ca n'a rien à voir avec la source. Ce que tu "importes" dans une classe, ce sont les fonctionnalités d'une autre classe. L'important dans un import, c'est d'avoir accès, dans le classpath du projet accès à la classe importée. Que tu aies ou non accès aux sources des classes importées ne change rien au fonctionnement de ton programme.

    Citation Envoyé par EnRadeSurEclipse Voir le message
    Dois-je comprendre de ton message que je dois aussi faire un lien avec une librairie c'est à dire un .jar?
    Aucune idée... je n'ai pas de boule de cristal et je ne sais pas comment ton projet est construit. Ce qui est certain, c'est que tu as visiblement besoin de réviser les bases du fonctionnement du langage (importations de classes, sources, classes, librairies, etc.). Donc je te suggère la FAQ ou d'aller lire des cours sur la question.
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  5. #5
    Nouveau membre du Club
    Inscrit en
    Décembre 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 64
    Points : 39
    Points
    39
    Par défaut
    Citation Envoyé par CyberChouan Voir le message
    Il est étonnant que tu aies la source de ClientHttpRequest dans ton projet, mais bon, pourquoi pas...



    Ca n'a rien à voir avec la source. Ce que tu "importes" dans une classe, ce sont les fonctionnalités d'une autre classe. L'important dans un import, c'est d'avoir accès, dans le classpath du projet accès à la classe importée. Que tu aies ou non accès aux sources des classes importées ne change rien au fonctionnement de ton programme.

    Tu veux dire que la Java Build Class?
    Si c'est le cas je vois bien une référence à un répertoire appelé javatools et qui contient non pas la source mais bien la classe.


    Aucune idée... je n'ai pas de boule de cristal et je ne sais pas comment ton projet est construit. Ce qui est certain, c'est que tu as visiblement besoin de réviser les bases du fonctionnement du langage (importations de classes, sources, classes, librairies, etc.). Donc je te suggère la FAQ ou d'aller lire des cours sur la question.
    J'ai en effet fait un tour assez long et fastidieux, mais nécessaire, sur les FAQ.
    Et je me demande si je ne fais pas fausse route. Peut-être que cette classe fonctionne, en fait.
    Mon message d'erreur est le suivant dans le debugger:
    String.substring(int, int) line: not available
    Et ensuite il me balance "source not found" c'est pourquoi j'ai supsecté cette librairie externe (c'est comme cela que je comprend ma classe ClientHTTPRequest)
    Et ce qui m'étonne c'est que je ne trouve nulle part dans mon programme une ligne contenant "String.substring".
    Ca sort d'où ce machin?

    Ma perplexité croît.

  6. #6
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Points : 4 314
    Points
    4 314
    Par défaut
    Citation Envoyé par EnRadeSurEclipse Voir le message
    Et ce qui m'étonne c'est que je ne trouve nulle part dans mon programme une ligne contenant "String.substring".
    Ca n'a rien d'étonnant... String.subString(int, int) est le nom complet d'une méthode avec sa signature: il faut traduire "méthode subString de la classe String prenant 2 arguments de type int"

    Cette méthode n'étant pas statique, tu ne risque pas de la voir invoquée par "String.subString(...)" dans un code. La méthode subString() en question est nécessairement invoquée dans le code sur une instance de la classe String (comme précédemment, va voir la FAQ si tu ne connais pas la notion de static).
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  7. #7
    Nouveau membre du Club
    Inscrit en
    Décembre 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 64
    Points : 39
    Points
    39
    Par défaut Résolu
    Halte au sketch!
    J'ai enfin trouvé la source de mon problème. Rien a voir avec la librairie ClientHTTPRequest.
    C'est bien la fonction substring qui ne fonctionnait plus mais sur une classe qui n'était pas identifiée par le debogueur d'Eclipse, ce qui a causé mon trouble.
    Le debogueur m'indiquait string.substring erreur alors que dans mon programme le problème concernait une de mes classes.
    Bon ben c'est résolu quoi,
    Merci CyberXXXX.

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

Discussions similaires

  1. Debug : Source Not Found
    Par gargantua dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 10/09/2009, 10h54
  2. "Source not found" en mode Debug
    Par gabier dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 12/03/2008, 12h31
  3. Source not found - Edit source lookup path
    Par Widiwi dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 16/08/2007, 15h27
  4. Réponses: 3
    Dernier message: 23/05/2007, 09h43
  5. Debug : source not found
    Par polo54 dans le forum Eclipse Java
    Réponses: 4
    Dernier message: 16/10/2006, 15h42

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