2013-06-27 7 views
5

Bei der Aktualisierung von Tomcat 6 auf Tomcat 7 haben wir eine Reihe von Dateien auf dem Klassenpfad im Verzeichnis $ CATALINA_HOME/lib auf 6 gespeichert - und es war sinnvoll, diese beiden $ CATALINA_HOME/shared/lib auf Tomcat 7 zu verschieben.Tomcat 6 vs 7 - lib vs shared/lib - nur jars?

Was wir gefunden haben, ist, dass die JAR-Dateien über OK gingen - aber alles, was keine JAR-Datei war - zB eine XML-Datei usw. wurde nicht von der im shared/lib-Verzeichnis geladenen Klasse aufgenommen. Wenn wir die Nicht-JAR-Dateien zurück in das Verzeichnis $ CATALINA_HOME/lib verschoben haben, wurden sie ohne Probleme in den Klassenpfad geladen.

Meine Frage ist - ist das ein Fehler im Classloader in Tomcat 7? Oder ist das beabsichtigte Verhalten? (Failing in einer Art und Weise nicht-JAR-Dateien auf dem Classpath aus dem $ CATALINA_HOME/shared/lib laden inkonsistent, dass die Dateien von $ CATALINA_HOME/lib lädt)

OS: Windows7

Tomcat-Version: 7.0 .30

Java-Version: 1.7.0_11

Antwort

4

ich benutze gemeinsamen lib nicht, aber nach diesem doc: http://wiki.apache.org/tomcat/HowTo

Hinweis th Bei Tomcat 6.0.14 ist das Verzeichnis $ CATALINA_HOME/shared/lib nicht vorhanden.

Sie müssen dies hinzufügen, und Sie werden $ CATALINA_HOME/conf/catalina.properties bearbeiten müssen, so dass die shared.loader Linie wie diese shared.loader sieht = $ CATALINA_HOME/shared/lib

+0

Dank @Darius X. - dieser Link Absatz hat genug Informationen, dass Sie fast das gleiche Problem von der Tomcat Doco abgeleitet haben könnte. Meine Frage ist, ob dies ein beabsichtigtes Verhalten ist oder nur eine Konsequenz von etwas anderem. – hawkeye