War文件的扩展机制

时间:2012-07-08 05:28:54

标签: java java-ee jar manifest war

我正在研究Web应用程序的扩展机制。具体情况是我想在我的系统上的某个位置(我的战争之外)引用jar文件,我不想仅仅通过在war / lib中复制它们来复制它们。为了进一步解释这一点,通过安装程序,我的应用程序将安装所有模块和库,其结构类似于,

  • 应用
    • libs
    • module1
    • 模块2

现在这里module1是一个桌面应用程序,包含自己的一组特定jar,而“libs”目录中使用了常见的jar。类似地,module2是一个webapplication(.war),它将在war内部捆绑特定的jar,但是对于常见的jar,它需要引用“libs”文件夹。

我一直在阅读包装机制,并且“已安装包”(即通过Extension-List)似乎是实现此目的的方法。

首先,我想了解这是否是唯一可用的选项,还是有任何其他方法可以帮助我实现此行为。 其次,对于Installed Packages,引用jar只需要存在于jre / lib / ext位置。这意味着我必须将这些常见的罐子复制到jre文件夹中。除非那是唯一的出路,否则我对这个选择并不太热衷。

谢谢,
维基

1 个答案:

答案 0 :(得分:0)

将内容安装到JRE目录树中通常是一个坏主意。它会污染其他应用程序的JRE安装,如果他/她决定升级JRE,则会导致用户/管理员出现问题。

对于其他人,不清楚为什么您认为需要在webapp(或Web容器)之外安装。如果没有这个,很难建议您采用最佳方式。