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 :

ANT et RMIC "NoClassDefFoundError" sous Eclipse


Sujet :

Eclipse Java

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 14
    Par défaut ANT et RMIC "NoClassDefFoundError" sous Eclipse
    Bonjour,

    Je suis sur un problème où je m'arrache les cheveux depuis 2 jours... impossible de trouver la solution pour le moment, après de nombreuses recherches sur Google. Je me décide donc à faire un post !

    J'ai une appli que je développe sous Eclipse (3.4) avec le SDK JEE 5.
    Je bosse sous Windows.
    J'ai un script ANT "build.xml" qui me compile mon projet, notamment une cible rmic pour compiler les stubs RMI. Ca ressemble à cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    <path id="classpath">
         <fileset dir="${projet.bin}">
              <include name="*.jar" />
         </fileset>
         <fileset dir="${projet.lib}">
              <include name="*.jar" />
         </fileset>
    </path>
     
    ...
     
    <target name="rmi-compile" depends="init, compile">
         <rmic classname="foo.bar.MyService" base="${projet.obj}" >
              <classpath refid="classpath" />
        </rmic>
    </target>
    Lorsque j'exécute mon script depuis Eclipse, j'ai systématiquement une erreur sur cette cible rmic :

    java.lang.NoClassDefFoundError: sun/tools/java/Constants

    Il ne trouve pas cette classe de constantes...


    Bon à savoir :

    1 - J'arrive à exécuter parfaitement ce même script "build.xml" dans une fenêtre de commandes DOS en dehors d'Eclipse avec un ANT installé en externe (1.6.5 et 1.7.0 = OK)
    => J'en déduis qu'il n'y a pas fondamentalement de pb avec mon script ANT "build.xml"

    2 - J'ai un autre projet qui utilise également une cible rmic similaire dans un script ANT. Pour ce projet pas de pbs la compilation RMIC passe (!)
    => J'en déduis qu'il n'y a pas de pb avec mon Eclipse...

    D'où vient le pb alors ?? de la JDK ??


    Après recherches, j'ai vu que cette classe sun.tools.java.Constants est fournie avec le SDK Java (toutes versions) dans le JAR "tools.jar".

    J'ai bien ce JAR dans le SDK de JEE5 sous /jdk/lib.

    Dans les préférences ANT d'Eclipse (Window/Preferences/Ant/Runtime), j'ai bien une entrée dans "Global entries" qui est "C:\Program Files\Java\JEE_5_SDK\jdk\lib\tools.jar".

    A savoir : mon projet utilise comme JRE le SDK JEE 5.
    Au départ, ANT utilisait le JRE 1.5.0 (également installé sur mon poste), et le tools.jar référencé dans "Global Entries" était "C:\Program Files\Java\jdk1.5.0_08\lib\tools.jar"

    J'ai donc essayé de TOUT avoir au niveau Eclipse avec JEE 5 :
    - J'ai lançé Eclipse avec la VM Java de JEE 5
    => "eclipse.exe clipse -vm "C:\Program Files\Java\JEE_5_SDK\jdk\bin\java""
    - J'ai forcé le tools.jar de global entries de ANT à "C:\Program Files\Java\JEE_5_SDK\jdk\lib\tools.jar"
    - Le SDK de mon projet est toujours le JEE 5
    - J'ai même forçé le tools.jar, pourtant déjà présent dans le global entries ANT, dans le classpath d'exécution de rmic :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <path id="classpath">
         <fileset dir="${fmc.bin}">
              <include name="*.jar" />
         </fileset>
         <fileset dir="${fmc.lib}">
              <include name="*.jar" />
         </fileset>
         <pathelement path="C:\Program Files\Java\JEE_5_SDK\jdk\lib\tools.jar"/>
    </path>
    - Pour finir, j'ai forçé également ce tools.jar dans la cible de l'application externe ant d'Eclipse (Pièce jointe 41378).

    Rien ne change... toujours cette erreur...

    Je ne sais plus quoi faire !!

    Si qqun a une idée, elle est la bienvenue !

    Merci d'avance et à plus.
    Images attachées Images attachées  

Discussions similaires

  1. [RMIC] NoClassDefFoundError sous Eclipse
    Par tonio_hawk dans le forum ANT
    Réponses: 0
    Dernier message: 17/02/2009, 11h05
  2. [ RCP ] "NoClassDefFoundError" à l'exécution sous Eclipse 3.2.1
    Par fabrisss dans le forum Eclipse Platform
    Réponses: 5
    Dernier message: 28/06/2007, 18h23
  3. [RMI]comment creer les stubs sous eclipse(lancement de rmic)
    Par juflata dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 22/06/2004, 13h51

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