我的网络应用程序有一个 .war 文件。问题的根源是我想为所有客户(具有不同环境)保留一个 .war 文件。为此,我应该在 .war 中保留不同版本的库,并决定在部署时使用哪些库。
例如:
第一个客户有 oracle 10,第二个客户有 oracle 11。我想在我的战争中保留两个 ojdbc.jar 文件,并根据属性文件中的某些参数选择要使用的文件。
解决此问题的一种解决方案是编写我自己的 ClassLoader,它不会加载无用的文件(如下所示:https ://serverfault.com/questions/317901/tomcat-possible-to-exclude-jars-during-app-deployment )。
问题是我们的 ClassLoader 类应该在“tomcat\lib”目录中。我的应用程序的安装更复杂。
也许还有其他方法可以解决这个问题?在我的应用程序中以编程方式使用反射或其他东西来完成它会很棒。
感谢帮助!