I'm reading Tomcat: The Definitive Guide to learn how to separate your instance specific files from your core installation, i.e. CATALINE_HOME; this separation is for providing a clean upgrade path as well as running multiple instances of tomcat off of the same installation.
A lot of the stuff they recommend pulling out into instance specific directories make sense, such as conf and webapps -- those folders contain the obvious application specific data. However, the also recommend pulling out all of the folders that contain the jars that hold runtime classes. To quote directly from their book: "Also, some jar files and class files may need to be loaded from the shared, server, and common directory trees. This means that for multiple instances to work, each Tomcat instance has to have its own set of these directories; they cannot be shared by two differently configured Tomcat JVM instances." Why would separate instances require their own jar files? Is it not possible to point two concurrently executing jvm's at the same set of jar files? Note: this is about tomcat 5.5 and 6.0