java.lang.NoClassDefFoundError: org / apache / juli / logging / LogFactory

J’ai en fait compris ce problème, mais cela m’a pris des jours, alors j’ai pensé coller ici ma solution pour aider les autres.

J’utilise Fedora 11 et dans Eclipse, j’ai essayé d’append un serveur Tomcat 6 et de le démarrer. Je voudrais obtenir l’erreur suivante:

“Démarrer Tomcat v6.0 Server at localhost” a rencontré un problème.

Le serveur Tomcat v6.0 Server at localhost n’a pas pu démarrer.

Ensuite, dans ma console, j’ai obtenu ce qui suit:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory at org.apache.catalina.startup.Bootstrap.(Bootstrap.java:54) Caused by: java.lang.ClassNotFoundException: org.apache.juli.logging.LogFactory at java.net.URLClassLoader$1.run(URLClassLoader.java:217) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:323) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) at java.lang.ClassLoader.loadClass(ClassLoader.java:268) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:336) ... 1 more Could not find the main class: org.apache.catalina.startup.Bootstrap. Program will exit. 

Je posterai la solution dans une réponse ci-dessous.

J’ai trouvé la solution ici: http://forums.opensuse.org/applications/391114-tomcat6-eclipse-not-working.html

  1. Dans Eclipse, ouvrez l’onglet “Serveur”.
  2. Double-cliquez sur l’entrée “Tomcat6” pour voir la configuration.
  3. Cliquez ensuite sur le lien “Ouvrir la configuration de lancement” dans le bloc “Informations générales”.
  4. Dans la boîte de dialog, sélectionnez l’onglet “Classpath”.
  5. Cliquez sur le bouton “Ajouter un fichier JAR externe”.
  6. Sélectionnez le fichier “/usr/share/tomcat6/bin/tomcat-juli.jar”
  7. Fermez la boîte de dialog.
  8. Démarrez tomcat 6 à partir d’Eclipse.

J’espère que poster ici aidera une pauvre âme.

J’ai copié le contenu du répertoire “C: \ Program Files \ Apache Software Foundation \ Tomcat 6.0 \ conf” dans le répertoire “workspace \ Servers \ Tomcat v6.0 Server at localhost-config” pour Eclipse. J’ai rafraîchi le dossier “Serveurs \ Tomcat v6.0 Server at localhost-config” dans l’explorateur de projets Eclipse, puis tout s’est bien passé.

  1. installer tomcat

    # yum install tomcat6 *

  2. modifier le fichier de configuration tomcat

    # vim /etc/tomcat6/tomcat-users.xml

quelque chose comme:

            
  1. créer un répertoire racine pour votre projet J2EE, exemple:

    $ mkdir -p ~ / Projet / java /

  2. faire un lien symbolique, / usr / share / tomcat6 / webapps / to ~ / Project / java /

    # ln -s /home//Project/java//dist/.war /usr/share/tomcat6/webapps/.war

Remarque: le fichier d’archive de guerre est créé automatiquement lorsque vous utilisez netbeans

0r vous pouvez faire:

 # ln -s /home//Project/java//webapps /usr/share/tomcat6/webapps/ 
  1. vérifier le fichier / etc / hosts, ce fichier doit contenir le nom de la machine, le fichier des hôtes

    jonathan 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 :: 1 localhost localhost.localdomain localhost6 localhost6.localdomain6

  2. lancer le service httpd

    # service httpd start

  3. vérifier la page web de loclahost

  4. démarrer tomcat6

    # service tomcat6 start

  5. vérifier localhost: page web 8080

  6. vérifier que tomcat montre votre projet
    si non:

    • vérifier le lien symbolique et redémarrer le service tomcat6
    • ou append manuellement avec la page Web du gestionnaire tomcat
      a) Définir le nom du projet
      b) Chemin d’access au fichier web.xml
      c) valide
      d) démarrer votre projet (à partir de la page Web)

pour fedora 13 et sous ils sont un problème, comment le réparer:

 # chmod -R g+w /var/log/tomcat6 /etc/tomcat6/Catalina # chmod -R g+w /usr/share/tomcat6/work/ 

archiver les fichiers journaux situés dans / var / log / tomcat6 / s’ils ne sont plus le message “autorisation refusée”

Les solutions susmentionnées ne m’ont pas aidé, j’ai pu le résoudre en réinstallant le serveur Tomcat qui a pris quelques secondes.

Sur mon PC, j’ai dû ouvrir à nouveau l’entrée Tomcat6 après la 7ème étape mentionnée ci-dessus, puis modifier l’option par défaut sous Server locations pour Use tomcat installation .