Erreur import jar eclipse

Résolu
M56 -  
 M56 -
Bonjour,
Je poste ici après de multiples recherches sur internet qui n'ont pas boutis.
Je travaille en Java sur Eclipse, et dans mon projet j'aimerais importer un jar fait maison (que je viens de créer) avec plusieurs fichiers class.
J'ai ajouter mon jar a mon projet mais cette erreur intervient lorsque je veut l'importer : "The import XXX cannot be resolved". Ce n'est pas la seule librairie que j'ai importer et les autres passent sans problème
Je ne vois vraiment pas d'où viens l'erreur pouvez vous m'aider ?
Merci d'avance



A voir également:

2 réponses

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Bonjour,

Soit le jar a été mal importé, soit les classes que tu veux utiliser ne sont pas utilisables. Cela peut arriver en particulier si la hiérarchie des packages n'est pas respectée.

Je te conseilles d'ouvrir le fichier .jar (c'est un fichier zip que l'on peut ouvrir avec n'importe quel logiciel de compression) et de vérifier sa structure.

Il devrait y avoir dedans :
  • Un répertoire META-INF, contenant le fichier MANIFEST.MF (optionnel)
  • L'arborescence des packages tels qu'ils sont dans les sources.

Exemple :
Pour une
public class Toto
dans
package tata.titi;
on aurait dans le jar :

- META-INF
- MANIFEST.MF
- tata
- titi
- Toto.class

Si l'architecture du jar est correcte c'est que c'est l'import qui est mal fait.

Remarque : pour gérer les dépendances entre projets il y a des outils qui existent et permettent de régler ces problèmes. Tu devrais regarder comment fonctionne Maven : Débuter avec Maven
3
M56
 
Merci pour ton aide KX.
J'ai trouvé le problème, j'essayais d'importer le .jar et non le package qui d'ailleurs était resté (default package).
J'arrive maintenant a importer le package :
" import testpack.*; "
Mais un problème subsiste, mes fonctions de sont pas reconnues, j'ai une erreur du type suivant :
"The method XXX is undefined for the type YYY"
Est-ce que vous pourriez m'aider ?
0
M56
 
Autant pour moi erreur de débutant, j'ai mal utilisé l'appelle de la fonction, autrement dit j'ai oublié de la précéder par " nomdelaclass. "
Problème résolut ^^
0