Frage

Ich arbeite an einer hallo-Welt Art von Web-Anwendung. Ich bin mit Eclipse Helios als meine IDE, Maven 2 Abhängigkeiten zu handhaben, und ein lokal ausführen Tomcat 7 Server zu implementieren und zu testen. Die Anwendung ist Spring MVC basiert und verwendet Hibernate für die Datenverwaltung.

Ich kann das Projekt erfolgreich in eine WAR-Datei verpacken. Wenn ich den Krieg in Tomcat einsetzen, wird der folgende Fehler in den Protokollen gemeldet:

SCHWEREN: Kontext-Initialisierung fehlgeschlagen

org.springframework.beans.factory.BeanCreationException: Fehler beim Erstellen der Bohne mit dem Namen 'HibernateSessionFactory' definiert in ServletContext Ressource [/WEB-INF/spring-servlet.xml]: Invocation of init Methode versagt; verschachtelte Ausnahme ist java.lang.NoClassDefFoundError: Könnte nicht initialize Klasse org.hibernate.cfg.AnnotationConfiguration bei

org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean (AbstractAutowireCapableBeanFactory.java:1338) beim org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean (AbstractAutowireCapableBeanFactory.java:473) beim org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory $ 1.run (AbstractAutowireCapableBeanFactory.java:409) Etc ...

Ich habe sicher zu sein, dass die richtige Abhängigkeit in meinem POM enthalten ist, und es ist:

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-annotations</artifactId>
    <version>3.4.0.GA</version>
    <type>jar</type>
    <optional>false</optional>
</dependency>

Ich habe, um zu sehen, dass die verpackte IST-Datei die erforderlichen JAR-Datei hat, die die Klasse hat erwähnt (org.hibernate.cfg.AnnotationConfiguration) in dem Fehler und es tut:

./ Tomcat 7 / webapps / helloworld / WEB-INF / lib / Hibernate-Annotationen-3.4.0.GA.jar

Auf der Grundlage dieser Informationen, ich meine, dass dies ein Classpath Konfigurationsproblem sein könnte. Aus der Dokumentation ich auf Tomcat gelesen habe 7 sollte Tomcat Lage sein, die JAR-Dateien im Verzeichnis „/ WEB-INF / lib“ -Ordner zu nutzen. Jeder weiß, wenn ich kann einen Schritt in der Konfiguration von Tomcat, um übersprungen, damit sie die JAR-Dateien in dem Ordner lib eine Webapp zu erkennen?

War es hilfreich?

Lösung

Ich weiß, das allgemeine Ratschläge, aber ich habe sowohl mit Tomcat und Jetty in der Vergangenheit wie diese ähnliche Probleme hatte, und es war, weil ich mehrere / falsche Versionen einiger Abhängigkeit hatte. Ich würde zunächst die m2eclipse POM Editor in Eclipse und klicken Sie auf „Abhängigkeitshierarchie“ und sorgfältig alle der transitiv Abhängigkeiten.

Bewertung
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top