Shared library mechanism
A web application's dependency on a library can be fulfilled by placing that library's JAR file in the web application's WEB-INF/lib
folder. However, as more of your web applications deployed into a single container depend on a given library, you end up with multiple copies of the same file, littered across your contexts. This not only takes up space and feels cluttered, but also makes upgrading to a new version of this library more work than it needs to be.
A better option would be to register this JAR file as a shared library and then have each of your web applications use that shared library.
Servlet containers usually provide a shared library mechanism, where you can place libraries that must be available across all the web applications deployed into that container.
Each web application then declares, using the META-INF/manifest.mf
file, the shared libraries that it expects to use. As per the servlet specification, a container must notify the administrator and...