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 :

Fichier ".jar" pas trouvé -- dans une "User library"


Sujet :

Eclipse Java

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Août 2007
    Messages
    59
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Août 2007
    Messages : 59
    Points : 69
    Points
    69
    Par défaut Fichier ".jar" pas trouvé -- dans une "User library"
    Bonjour,

    je vous décris mon problème:

    1.)J'ai une ERREUR lors de l'éxécution de mon application web:
    -->L'instruction, qui échoue : "Class.forName(com.mysql.jdbc.Driver)"
    -->L'exception déclenchée : "ClassNotFoundException"

    2.)CONFIGURATION de mon projet:
    Sous éclipse, dans l'arborescence de mon projet:
    -->J'ai créé une "User Library",
    -->J'y ai déposé le fichier : "mysql-connector-java-3.0.14-production-bin.jar"
    -->Résultat : l'exception décrite au 1.)

    3.)NOUVELLE CONFIGURATION :
    Dans l'arborescence de mon projet:
    -->J'ai trouvé la "Web App Library" (créé automatiquement lors de la création du "Projet Web"),
    -->J'y ai déposé le fichier : ".jar"
    -->Résultat : pas d'erreur ni d'exception, ca marche !

    QUESTION : Pourquoi mon application web :
    -->"trouve" le '.jar' lorsqu'il est dans la "Web App Library",
    -->mais ne le trouve pas lorsqu'il est dans une "User Library" (créé par moi)
    ????

    C'est une énigme pour moi. Probablement, ma connaissance d'éclipse est insuffisante.
    Merci pour l'explication, si vous en avez une.

  2. #2
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Salut,
    Il faut savoir qu'Eclipse intérprète de 2 façons le fait d'ajouter un jar à un projet (web) :
    - le build path : le jar est inclus dans le classpath uniquement lors de la compilation.
    - et l'autre, là où Eclipse rend le jar disponible lors de l'exécution.

    Tu peux faire n'importe quelle combinaison : des jars uniquement disponibles au build path, d'autres uniquement au runtime, et un même jar peut faire partie des deux.

    Dans ton cas, le problème est que lorsque t'as la CDNFE, c'est que le pilote JDBC n'est pas disponible au runtime.

    Solution http://www.developpez.net/forums/d15...e/#post3678263

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Août 2007
    Messages
    59
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Août 2007
    Messages : 59
    Points : 69
    Points
    69
    Par défaut Classe disponible à l'éxécution -- dans Eclipse -- comment
    Bonjour djo.mos,

    merci pour ta réponse, elle est claire et logique.
    Et elle suscite une autre question:

    1.)Mon OBJECTIF :
    Rendre ma classe disponible LORS DE L'EXECUTION.
    -->il s'agit d'une application web
    -->Je suis sous éclipse

    2.)Ma SOLUTION "de secours":
    Dans éclipse,
    -->je suis allé dans l'arborescence du projet ("package explorer"),
    -->puis dans la "Web App Library",
    -->et j'y ai déposé le fichier ".jar"
    ==>RESULTAT : ca marche, il trouve la classe lors de l'éxécution.

    3.)Recherche d'une SOLUTION MEILLEURE :
    Ce que je cherche:
    -->Rendre des fichiers ".jar" visibles à l'éxécution.
    -->Y a-t-il un "java runtime path" dans éclipse qui permette cela ?
    -->Où se trouve-t-il ?

    Merci pour ton aide . Et bon courage.
    chat_roux

  4. #4
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Salut,
    Le lien que je t'ai donné montre 2 façons de faire ça :
    - Soit en plaçant les jars dans le dossier WEB-INF/lib du projet
    - Soit en passant par Eclipse : clic droit sur le projet, properties, JEE Module Dependencies, et dans la liste qui s'affiche, soit tu coches les jars déjà présents au build path, soit tu ajoutes directement des jars ici.

  5. #5
    Membre du Club
    Homme Profil pro
    Développeur Java
    Inscrit en
    Août 2007
    Messages
    59
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Août 2007
    Messages : 59
    Points : 69
    Points
    69
    Par défaut OK, ca fonctionne -- Merci beaucoup !
    OK, ca fonctionne ...
    Merci beaucoup. Et bon courage !

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 10/07/2012, 00h14
  2. Réponses: 1
    Dernier message: 30/07/2010, 14h39
  3. [WD9] Fonction n'est pas trouvée dans le fichier DLL
    Par malik_ne dans le forum WinDev
    Réponses: 3
    Dernier message: 12/03/2010, 11h57
  4. Modification d'un texte dans une fenetre "d'erreur"
    Par PAUL87 dans le forum Access
    Réponses: 8
    Dernier message: 21/10/2005, 13h12

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