web-dev-qa-db-fra.com

Attachez la source dans l'éclipse d'un pot

J'ai ajouté un Student.jar dans mon Build Path dans mon Eclipse comme ceci-

Faites un clic droit sur le projet-> BuildPath-> Configure Build Chemin-> Bibliothèques-> Ajouter des fichiers JAR externes

Il existe une classe nommée StudentTest dans le fichier Student.jar. Lorsque je déboguais mon code dans Eclipse, je suis entré dans cette classe StudentTest dans le Student.jar.

Et après ça, Eclipse me montre comme ça-

Le fichier JAR S:\some_location\Student.jar n'a pas de pièce jointe source . Vous pouvez joindre la source en cliquant sur Joindre la source ci-dessous.

Maintenant, je ne suis pas sûr de savoir comment joindre la source dans mon Eclipse. Et d'où? Quelqu'un peut-il me fournir étape par étape ce que je dois faire?.

Mise à jour: - J'ai essayé de décompresser le Student.jar et j’ai eu Student folder. Et après cela, j'ai essayé de pointer la source sur Student folder. Mais je ne suis toujours pas en mesure de voir la classe correctement pour pouvoir la déboguer correctement.

33
AKIWEB

Un fichier .jar ne contient généralement que les fichiers .class, pas les fichiers .Java à partir desquels ils ont été compilés. C'est pourquoi Eclipse vous dit qu'il ne connaît pas le code source de cette classe.

"Associer" la source à un fichier JAR signifie indiquer à Eclipse où se trouve le code source. Bien sûr, si vous ne vous connaissez pas vous-même, cette fonctionnalité n’est guère utile. Bien sûr, vous pouvez essayer de chercher le code source sur Google (ou vérifier d'où vous venez avec le fichier JAR).

Cela dit, vous n'avez pas nécessairement besoin de la source pour déboguer.

13
meriton

Utilisez Java Source Attacher !

Il fait ce qu’Eclipse devrait faire: un menu contextuel avec clic droit indiquant "Joindre Java Source.

enter image description here

Il télécharge automatiquement la source pour vous et la joint. Je n'ai frappé que quelques bibliothèques dont il n'a pas connaissance et quand cela se produit, cela vous permet de redonner l'URL à la communauté afin que personne d'autre n'ait un problème avec cette bibliothèque.

32
oikonomopo

Eclipse n'affiche aucune source, car aucune source n'est disponible. Votre pot a seulement les classes compilées.

Vous devez importer le projet à partir du fichier jar et ajouter le projet en tant que dépendance.

Une autre option est d'aller à la 

Allez dans Propriétés (pour le projet) -> Chemin de construction Java -> Bibliothèques, sélectionnez votre fichier jar et cliquez sur la source, vous aurez la possibilité de joindre la source et les Javadocs.

12
Avinash Singh

Cela a fonctionné pour moi pour Eclipse-Luna:

  1. Cliquez avec le bouton droit sur * .jar dans le dossier Bibliothèques référencées de votre projet, puis cliquez sur Propriétés.
  2. Utilisez la page Pièce jointe source Java pour pointer vers l'emplacement de l'espace de travail ou l'emplacement externe sur le code source de ce fichier .jar.
3
Everlight

Je sais que c'est assez tard, mais cela sera utile pour l'autre utilisateur, car nous pouvons faire le travail de trois manières ... comme ci-dessous
1) 1. Attachez votre code source en utilisant 
c.-à-d., faites un clic droit sur le projet, puis sur les propriétés -> chemin de construction Java -> attachez votre source dans l'onglet source ou vous pouvez supprimer le fichier jar et attacher la source dans l'onglet bibliothèques
2. Utilisation de l'analyseur de source Eclipse 
Sur le marché Eclipse, vous pouvez télécharger l’analyseur de source Java du plug-in, qui permet de joindre le code source du fichier jar open source. nous pouvons y arriver après l’installation du plugin, en faisant un clic droit sur le fichier JAR Open Source et en sélectionnant l’option Joindre la source.
3. En utilisant Jadclipse dans Eclipse, vous pouvez le faire 
enfin, vous pouvez réaliser la décompilation de votre code en utilisant ce plugin. de la même manière, vous pouvez télécharger le plug-in depuis la place de marché Eclipse et l'installer dans votre vue Eclipse . en vue jadclipse, vous pouvez voir votre fichier .class au format source décompliler

Je pense que dans votre scénario, vous pouvez utiliser l'option un et l'option trois, je préfère l'option trois uniquement si je veux le code source non pour le débogage du code. sinon je vais coder l'option 1, car j'ai la source déjà disponible avec.

2
ramesh027

Retournez à l'endroit où vous avez ajouté le pot. Je crois que c’est l’onglet Librairies, je n’ai pas ouvert Eclipse mais cela sonne juste. à gauche du fichier jar que vous avez ajouté, une flèche pointant vers la droite, cliquez dessus et 3 ou 4 options sont développées, l’une d’elles étant le fichier source de la bibliothèque. Cliquez dessus et cliquez sur Editer (je pense que vous pouvez aussi double-cliquer dessus) puis localisez le fichier ou le dossier sur votre disque dur, vous devrez probablement cliquer sur Appliquer ou bien et vous pourrez continuer, même avec javadoc le dernier est les bibliothèques natives. Je ne fais plus très attention quand je suis à l'intérieur si vous ne pouvez pas le savoir. C'est ce que vous demandiez, non?

2
Kevin Bigler

J'ai fait face au même problème et résolu en utilisant les étapes ci-dessous. Allez dans Windows-> Préférences-> Editeurs-> Associations de fichiers

Cliquez ici sur Ajouter Puis tapez .class Cliquez sur OK

cliquez à nouveau sur Ajouter .__ puis tapez .classwithoughtsource cliquez sur OK

Maintenant, vous pourrez voir l’option JadClipse dans la section Java de Windows-> Préférences

Veuillez indiquer le chemin du fichier jad.exe comme indiqué ci-dessous.

Chemin d'accès pour Decompiler-C:\Utilisateurs\Ahr\Documents\Eclipse-jee-galileo-SR2-win32\jad.exe Répertoire pour les fichiers temporaires C:\Users\ahr.net.sf.jadclipse

cliquez sur Appliquer

Vous devriez maintenant pouvoir voir les fichiers de classe au format approprié.

0
Anitha HR

Importez simplement le package de la classe source requise dans votre code à partir de jar.

Vous pouvez trouver les sous-packages de jar dans

Eclipse - YourProject -> Bibliothèques de référence -> yourJars -> Packages -> Clases

Comme-- je m'inquiétais de la question mysql connector jar "La pièce jointe source ne contient pas la source" En donnant le chemin du dossier source, il affichera cette déclaration

The source attachment does not contain the source for the file StatementImpl.class

Ensuite, je viens d'importer le paquetage de mysql connector jar qui contient la classe requise:

import com.mysql.jdbc.*;

Alors le programme fonctionne bien.

0
Adnan