The document discusses the purpose and differences between the multiple lib directories in Tomcat 5.5.x. The <Catalina_Home>/server/lib directory contains jars only visible to and used by the Tomcat container. The <Catalina_Home>/common/lib directory contains jars visible to and used by both the container and web applications. The <Catalina_Home>/shared/lib directory contains jars only visible to and used by web applications. Each directory is loaded by a different class loader that determines which components the jars are visible to.
3. <Catalina_Home>/server/lib
• Contains jar files to be used
by tomcat container.
Includes all classes and
resources required to
implement Tomcat 5.5.x
itself
• These classes and resources
are totally invisible to web
applications
• The Catalina class loader
makes these classes and
resources visible to tomcat
containers
4. <Catalina_Home>/common/lib
• Contains jar files to be used
by both the tomcat container
as well as all deployed web
applications
• These classes and resources
are visible to both container
and all web applications
• The Common class loader
makes these classes and
resources visible to both
container as well as web-
applications
5. <Catalina_Home>/shared/lib
• Contains jar files to be used
by all deployed web
applications only
• These classes and resources
are totally invisible to tomcat
container
• The Shared class loader
makes these classes and
resources visible to all
deployed web applications
6. Summary
Folder Path Visible to tomcat Visible to web Class Loader Name
container applications
<Catalina_Home>/server/lib Yes No Catalina
<Catalina_Home>/common/lib Yes Yes Common
<Catalina_Home>/shared/lib No Yes Shared