2010-09-18 4 views
1

J'essaie de déployer une application sur Tomcat 7 sur un serveur Windows. J'ai une copie locale configurée et j'ai testé avec Eclipse sans problème, mais sur le serveur de production, je reçois des messages IncompatibleClassChangeError.Tomcat reporting IncompatibleClassChangeError - problème de classpath?

Cela avait été un problème sur le serveur local quand il y avait des problèmes avec le classpath, mais je configuré le classpath correct dans les propriétés du serveur dans Eclipse et tout a fonctionné très bien. Je suis nouveau sur Tomcat et d'après ce que je comprends, il devrait lire les fichiers jar de mon répertoire WEB_INFO/classes, mais quand mes bocaux sont là, l'application ne veut pas charger du tout. Quand je les déplace vers le $ CATALINA_HOME/lib (je me rends compte que ce n'est pas ce qu'ils devraient faire), l'application se charge bien mais signale IncompatibleClassChangeError.

Pourquoi ne sont pas mes pots en cours de lecture WEB-INF/classes? Y at-il une configuration que je devrais regarder pour résoudre ce problème?

Répondre

1

Les fichiers JAR spécifiques à Webapp doivent contenir Webapp/WEB-INF/lib et non Webapp/WEB-INF/classes. Le Tomcat/lib ne doit être utilisé que pour les bibliothèques spécifiques au serveur d'applications et, éventuellement, pour les fichiers JAR qui doivent être partagés entre les applications Web déployées.

Il pourrait y avoir plus dans le IncompatibleClassChangeError, cela peut avoir une cause tout à fait différente. Mais essayez d'abord d'obtenir les JAR au bon endroit. Si en vain, alors s'il vous plaît mettez à jour votre question pour inclure le message de détail. Cela sent au moins que vous mettez les fichiers JAR d'un différent appserver make/version dans le classpath.

+0

C'était tout. Merci. Trop regarder un problème simple peut le rendre tellement pire. – Hibiscus

+0

De rien. – BalusC