tomcat 启动应用工程的时候,它会加载应用工程中的jar包,而一般情况这些jar包默认放在WEB-INF/lib路径下,那么我们可以不可以指定额外的路径去加载应用工程中所需的jar包呢,这点我明确的告诉你是可以的,而且tomcat给我们预留了扩展 ,具体怎么做请看下面
我们需要在Con中配置
<Context docBase="\webapps\mydocbase"><Loader className="org.a; virtualClasspath="/dir/classes;/somedir; /somedir/*.jar"/> </Context>
而Con 怎么存放在应用工程的META-INF/con,其实就是在Context节点中配置一个Loader节点
loader节点中className就是解析映射这个Loader的类,virtualclasspath这个属性就是jar包所存放的路径
这里加载的jar包会跟默认路径WEB-INF/lib下的jar一样
下面请看
从这个类我们可以知道他其实继承的是WebappLoader这个类,而这个WebappLoader类其实就是整个tomcat中加载jar class等文件的类,
而他的startInternal方法恰巧表明他在,启动过程中就会帮我处理好额外jar的加载