Joa*_*ira 5 java tomcat servlets classloader
我的方案如下:
我有一个部署到servlet容器的WebApp.war.此WebApp.war在WEB-INF/lib中包含以下库:
我有另一个库,比如lib_vendor.jar,由于许可问题我无法在WebApp/WEB-INF/lib中部署,所以我让我们的客户在安装应用程序后在tomcat/lib中复制这个库.但由于lib_vendor.jar需要在Web应用程序类加载器中加载的lib_a.jar和lib_b.jar,因此我无法使用lib_vendor.jar.
如何在Web应用程序的同一个类加载器中加载外部库(不在WEB-INF/lib中)?
由于您使用的是Tomcat,因此可以利用VirtualWebappLoader.
添加META-INF/context.xml
蒙山
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/somepath/myapp">
<Loader className="org.apache.catalina.loader.VirtualWebappLoader"
virtualClasspath="/somedir/*.jar"/>
</Context>
Run Code Online (Sandbox Code Playgroud)
还要记住,virtualClasspath属性必须是绝对路径,如下面的注释中所述.
归档时间: |
|
查看次数: |
6231 次 |
最近记录: |