5

Ich konfiguriere ein neues Projekt in Eclipse. Mein Projekt hat viele Module, darunter eines mit dem Namen eas.core. zu dem BuildPath meines eas.core-Moduls habe ich eine JAR-Datei common.jcr.jar hinzugefügt, die eine Klasse namens ContentRepositorySettings enthält, die ich in meinen Codes verwende. aber auf der Laufzeit, bin immer ich noch ein ClassNotFoundException wie unten gezeigtClassNotFoundException, obwohl das JAR, das die Klasse enthält, ordnungsgemäß im Klassenpfad vorhanden ist

java.lang.NoClassDefFoundError: cm/bao/common/jcr/ContentRepositorySettings 
at java.lang.ClassLoader.defineClass1(Native Method) 
at java.lang.ClassLoader.defineClass(ClassLoader.java:800) 
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 
at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2944) 
at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1208) 
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1688) 
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1569) 
at cm.bao.eas.core.ElectronicArchivingApplicationImpl.setupGlobalSettings(ElectronicArchivingApplicationImpl.java:33) 
at cm.bao.eas.core.ElectronicArchivingApplicationImpl.start(ElectronicArchivingApplicationImpl.java:49) 
at cm.bao.eas.ui.gwt.server.listner.ElectronicArchivingContextListner.contextInitialized(ElectronicArchivingContextListner.java:18) 
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4973) 
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5467) 
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) 
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) 
at java.util.concurrent.FutureTask.run(FutureTask.java:262) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
at java.lang.Thread.run(Thread.java:745) 
Caused by: java.lang.ClassNotFoundException: cm.bao.common.jcr.ContentRepositorySettings 
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1718) 
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1569) 
+1

Wenn Sie sagen "es ist richtig in meinem Klassenpfad" ist es wichtig, ** Ihren ** Klassenpfad ** ** wirklich zu zeigen. Kopieren Sie es und fügen Sie es im Idealfall ein, so dass Tippfehler erhalten bleiben. –

+1

Ja, und ich würde hinzufügen, dass nicht wirklich der Klassenpfad in Eclipse wichtig ist, sondern der Inhalt der WAR-Datei. –

+0

Es scheint, Sie haben doppelte Kopien –

Antwort

8

Wenn Ihr Projekt Faceted ist, direkt auf dem Projekt klicken und gehen Sie zu Properties, und wählen Deployment Assembly auf der linken Seite. Überprüfen Sie, ob die Abhängigkeiten dort als Build Path Einträge oder Archives (Gläser) existieren. Sobald dies erledigt ist, können Sie Project>Clean starten und den Server neu starten.

+1

ok, ich habe deine Anweisungen befolgt und es funktioniert einwandfrei. Danke James – blaiso

+0

@blaiso, das ist cool! –

Verwandte Themen