J'ai une ancienne application web fonctionnant sous Tomcat 5.0.Contrôlez l'ordre de classpath des jars dans WEB-INF/lib sur Tomcat 5?
Cette application web a deux pots dans WEB-INF/lib, disons Foo-2.0.jar et Bar-2.0.jar. Bar-2.0.jar inclut en fait un Foo-1.0.jar à l'intérieur. Bar est également un projet mort, ce qui signifie pas de mise à niveau, pas de source, mais toujours important pour l'application.
La dernière version de cette application nécessite Foo-2.0.jar pour d'autres choses. Ayant à la fois Foo-1.0.jar et Foo-2.0.jar dans le classpath crée un conflit, en particulier un ClassDefNotFound type d'erreur, où une classe qui a été ajouté plus tard dans la version 2.0 ne peut pas être trouvée dans 1,0, etc.
Dans Eclipse, la solution simple est à un clic droit sur votre projet , cliquez sur Propriétés >Java intégré Chemin>Ordre et l'exportation et de se déplacer Foo-2.0.jar ci-dessus Bar- 2.0.jar donc c'est résolu en premier.
Comment accomplir ce type de classpath ordering pour les pots dans WEB-INF/lib dans Tomcat?
Il n'y a aucun moyen de savoir si Bar-2.0 fonctionne avec Foo-2.0 ou non, et c'est une bibliothèque massive, binaire seulement, sans cas de test. – rcampbell
Je crois que la solution que vous utilisez a Bar-2.0 fonctionnant avec Foo-2.0, juste d'une manière détournée. – jsight