我们在 TomEE 1.7(基于 Tomcat 7)的 EAR 中部署了一个大型 Web 应用程序。该应用程序的基本结构是:
- 应用程序
- 网络应用1
- 网络应用2
- 库
- jar1
- jar2
- jar3
- 补丁.jar
应用程序共享公共(public) jar 的地方是在 lib 文件夹中。相当标准的 EAR 配置。为了更容易地提供修复,我们在 lib 文件夹中添加了一个名为“patch.jar”的 jar。然后我们将修改 META-INF 文件夹中的 MANIFEST.MF 以配置显式类路径并在前面放置 path.jar。这样,如果我们添加一个类,应用程序就会找到它。如果我们修复了一个类,我们会将更新后的类的副本放在 patch.jar 中,然后由于类路径指定,应用程序将首先找到更新后的类并使用它。
这允许我们在交付补丁时只交付一个 JAR。更小、更快、更安全(因为我们只提供少量更新的类,而不是整个应用程序)。
当我们在 JBoss 中部署时,这工作得很好,但现在我们已经转移到 TomEE,我们无法让它工作。它似乎总是忽略任何类路径指定。有没有办法做到这一点——为 TomEE EAR 应用程序指定一个显式类路径,以便应用程序按顺序搜索 jar 列表?
提前致谢!
最佳答案
也许尝试在 conf/system.properties 中添加:
xbean.finder.use.get-resources=true
关于tomcat - 在 TomEE 1.7/Tomcat 7 中指定类路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28244094/