2013-06-27 15 views
5

Durante l'aggiornamento da Tomcat 6 a Tomcat 7 - abbiamo tenuto un numero di file che volevamo sul classpath nella directory $ CATALINA_HOME/lib su 6 - e aveva senso spostare questi due $ CATALINA_HOME/shared/lib su Tomcat 7.Tomcat 6 vs 7 - lib vs shared/lib - jars solo?

Quello che abbiamo trovato è che i file jar sono passati bene - ma tutto ciò che non era un file jar - ad esempio un file xml ecc non è stato raccolto dalla classe caricata nella directory shared/lib. Quando abbiamo spostato i file non-jar nella directory $ CATALINA_HOME/lib, sono stati caricati nel classpath senza problemi.

La mia domanda è - questo è un bug nel classloader in Tomcat 7? O è questo comportamento previsto? (Non riuscendo a caricare i file non-jar sul percorso di classe del $ CATALINA_HOME/shared/lib in modo incompatibile a quello che carica i file da $ CATALINA_HOME/lib)

OS: Windows7

versione Tomcat: 7.0 versione .30

Java: 1.7.0_11

risposta

4

io non uso lib condivisa, ma in base a questo documento: http://wiki.apache.org/tomcat/HowTo

Nota esimo a Tomcat 6.0.14 la directory $ CATALINA_HOME/shared/lib non esiste .

Sarà necessario aggiungere questo e sarà necessario modificare $ CATALINA_HOME/conf/catalina.properties modo che la linea shared.loader assomiglia a questo shared.loader = $ CATALINA_HOME/shared/lib

+0

Grazie a @Darius X. - quel paragrafo di collegamento ha abbastanza informazioni che potresti quasi dedurre lo stesso problema da Tomcat Doco. La mia domanda è se questo è il comportamento previsto - o solo una conseguenza di qualcos'altro. – hawkeye