web-dev-qa-db-fra.com

Attachez le Java code source

Je ne peux pas pour la vie de moi attacher le code source Java à Eclipse pour que je puisse voir le fonctionnement interne du langage. Pas même quelque chose d'aussi simple que la String Class.

quand je lance Java -version c'est ce que j'ai:

Java version "1.6.0_14"
Java(TM) SE Runtime Environment (build 1.6.0_14-b08)
Java HotSpot(TM) Client VM (build 14.0-b16, mixed mode, sharing)

Je télécharge la source Java depuis: http://download.Java.net/jdk6/source/

Et dans Eclipse quand je l'attache, il dit:

The JAR file "C:\Program Files\Java\jre6\jdk-6u14-fcs-src-b08-jrl-21_may_2009.jar" 
has no source attachment.

Qu'est-ce que je fais mal?

67

Normalement, si vous avez installé le JDK6u14, Eclipse doit le détecter et le déclarer automatiquement dans sa liste "JRE installé".

Sinon, vous pouvez ajouter ce JDK via "Windows/Préférences": Java > Installed JREs:

Il suffit de pointer vers le répertoire racine de votre installation JDK: il doit inclure les sources du JDK (src.Zip), automatiquement détecté et attaché à rt.jar par Eclipse.

Add JRE VM, from pic.dhe.ibm.com/infocenter/iadthelp/v8r0/topic/org.Eclipse.jdt.doc.user/tasks/images/task-add_jre_std_vm.PNG

78
VonC

Vous n'avez pas nécessairement besoin de ajouter la source, mais vous devrez peut-être plutôt supprimer a JRE qui n'a pas la source attachée.

En regardant les "JRE installés", j'ai vu que mon JDK était correctement configuré avec la source, mais le JRE par défaut sur la machine n'avait pas de sources. Eclipse était par défaut à cela lors de la recherche de source.

Je viens d'utiliser le bouton remove pour expulser le JRE, laissant mon JDK. J'ai ensuite frappé F3 et la source était là. Ouais!

29
Joseph Lust

Maintenez la touche ctrl enfoncée puis cliquez sur la classe dont vous souhaitez voir le fonctionnement interne (par exemple: String) puis vous y trouverez le bouton "Attacher la source". Clique dessus. Cliquez ensuite sur Dossier externe. Ensuite, accédez à votre emplacement jdk, par instance C:\Program Files\Java\jdk1.6.0. C'est ça.

enter image description here

21
JAB

La façon la plus simple de procéder consiste à installer un JDK et à indiquer à Eclipse de l'utiliser comme JRE par défaut. Utilisez l'installation par défaut.

(de mémoire)

Ouvrez la fenêtre -> Préférences. Sélectionnez Installed Java runtimes, et choisissez Add. Accédez à la racine de votre JDK (\ Programs ...\Java) et cliquez sur Ok. Ensuite, sélectionnez-le comme JRE par défaut (coche).

Après une reconstruction de l'espace de travail, vous devez avoir la source attachée à toutes les classes JRE.

7

Pour attacher la source JDK afin de vous référer à Java Code source pour la recherche de code qui aide à apprendre l'implémentation de la bibliothèque et parfois au débogage, tout ce que vous avez à faire est de:

Dans votre Eclipse Java> Bibliothèque de référence JRE recherchez rt.jar. Faites un clic droit et accédez aux Propriétés:

Sélectionnez "Java Source Attachment" à droite et à gauche sélectionnez "External Location" et cliquez sur "External File" Button et localisez - "src.Zip" fichier dans votre $ Java_HOME chemin dans mon cas pour ma machine Windows src.Zip l'emplacement est: C:/Program Files/Java/jdk1.7.0_45/src.Zip.

Vous avez terminé maintenant! Juste Ctrl + clic sur n'importe quelle classe de bibliothèque Java Java dans votre code de projet) pour rechercher le code source de la classe Java.

7
praveenak

Un moyen simple qui a fonctionné pour moi:

  1. Vérifiez si vous avez installé un jdk (il est généralement dans "Program Files\Java", si vous n'en avez pas, installez-le.
  2. Associez-le à Eclipse. Dans Préférences -> Java -> JRE installés supprimez le JRE installé et ajoutez le JDK.

Ensuite, le projet le détectera et ajoutera les nouvelles bibliothèques du JDK. À la fin de ce processus, cela ressemble à la capture d'écran que je joins.

JDK added

5
Weslor

Supprimez simplement le JRE dans Préférences> Java> JRE installé et ajoutez le dossier de votre JDK. Si vous ajoutez simplement JDK tout en laissant JRE, cela ne fonctionnera pas

3
Thiago

Ce qui a fonctionné pour moi (avec JDK7) était le suivant:

  1. Téléchargez le openjdk-xy-sources.jar depuis GrepCode ,
  2. renommer le fichier en src.Zip ,
  3. copier src.Zip dans le dossier racine du JRE/JDK ajouté à Eclipse (celui avec bin et lib dossiers dedans)
  4. redémarrer Eclipse

Alternativement, si vous ne voulez pas écrire dans votre dossier JDK, vous pouvez également attacher src.Zip à (au moins) rt.jar dans Eclipse dans la fenêtre | Menu Préférences dans Java | JRE installés .

Si vous n'êtes pas à l'aise avec le téléchargement des sources depuis GrepCode, vous pouvez également les obtenir directement depuis openJDK. Cela nécessite cependant un peu plus d'efforts. Remplacez la première étape ci-dessus par les étapes suivantes:

  1. Téléchargez les sources JDK depuis ici ,
  2. extraire tous les dossiers du dossier * openjdk\jdk\src\share\classes * du fichier Zip,
  3. créer un fichier src.Zip et y ajouter ces dossiers,
  4. copier src.Zip dans le dossier racine du JRE/JDK ajouté à Eclipse (celui avec bin et lib dossiers dedans)
  5. redémarrer Eclipse

Une troisième alternative pour acquérir src.Zip consiste à télécharger les versions non officielles d'OpenJDK à partir de ici . Le src.Zip est contenu dans le Zip téléchargé.

1
schnatterer

Ancienne question, voici ce que j'ai fini par utiliser Java Plugin Attatcher source: http://marketplace.Eclipse.org/content/Java-source-attacher#.U85j4rF-N7s

Il peut fournir la source de différents projets open source. Une chose étrange, si vous avez des bibliothèques sous le dossier libs, vous ne pouvez pas y attacher, mais vous devez attacher la source en cliquant sur le pot affiché sous "Bibliothèques externes".

1
andro83

Vous devez attacher Java sources fournies avec JDK (C:\Program Files\Java\jdk1.8.0_71\src.Zip).

Étapes (** Source: lien ):

  1. Sélectionnez un projet Java
  2. Développer Bibliothèques référencées
  3. Sélectionnez n'importe quel fichier JAR, dans notre cas rt.jar qui est Java runtime
  4. Faites un clic droit et accédez aux propriétés
  5. Attachez le code source en parcourant le chemin source.
0
Azad Singh Kalakoti

L'option fournie par "praveenak" peut également être appliquée à tout autre fichier jar avec le fichier source fourni. Par exemple, pour JavaFx, nous cliquons avec le bouton droit sur jfxrt.jar, sélectionnons "Propriétés" et saisissons jdk1.8.0_05/javafx-src.Zip pour "Chemin" sous Emplacement externe.

0
tigger2011