对于某些应用程序,我使用ZK,其他Hibernate,其他Apache Commons等。
我不想部署75MB的war文件,只是因为它使用了很多库。
我不想将库添加到我的tomcat lib文件夹中,也不想将其添加到配置的类路径中,因为我可能有一个使用库x.1的旧应用程序和另一个使用库x.2的应用程序
因此,最好在web.xml或context.xml中添加一些类似以下内容的内容:
<classpath>/usr/local/tomcat/custom-libs/zk-5.0.4</classpath>
注意: 以上为伪代码
从Tomcat 7开始,没有提到不能在生产中使用VirtualWebappLoader。我尝试过,它像梦一样运作。只需将以下内容添加到META-INF / context.xml中:
<?xml version="1.0" encoding="UTF-8"?> <Context antiJARLocking="true" path="/websandbox"> <Loader className="org.apache.catalina.loader.VirtualWebappLoader" virtualClasspath="/usr/.../*.jar;/usr/.../*.jar"/> </Context>
在Netbeans中,在打包下,我只是取消选中所有包,将.war的大小减小为零,确保依赖项位于服务器上的正确文件夹中并上载。是的 没有更多的100 MB WAR文件。