一. 问题
在开发若干个类似项目的时候,通常这些 Webapp 的lib 都是一样的,可以将其放到一个公共的目录,这样部署的应用就会小很多。
比如 一个带有Spirng + JPA 的通常Lib 都在 16M,自己写的代码不过 几百K而已。
所以可以将 Spring 的lib 放到Tomcat 目录下,使得所有的Webapp 能够共享。
但由于每个Webapp 的 lib 都需要加载到不同的Classloader里,所以放到 Tomcat/Lib 或者 Tomcat/common 里都是不对的。
二. 自定义Loader
通过自定义Loader,使得 每个Webapp 被启动的时候,都会加载Tomcat/libext 目录下的所有jar ,每个Webapp 互不干扰,达到了木的。
三.配置
如果要全局,可以修改 Tomcat/conf/context.xml ,或者 指定webapp的context.xml