10

JBoss (5.1.0) 使用了许多不同的 lib 目录:我可以找到 jboss/lib、jboss/lib/endorsed、jboss/common/lib、jboss/server/default/lib,当然还有 jboss/server/ default/deploy/myapp/WEB-INF/lib (我错过了什么吗?)。

从上面,我知道我需要使用最后一个(WEB-INF/lib)来放置我的应用程序需要的任何 jar。其他人呢?它们有什么用,我应该放什么?为什么把它放在那里而不是放在 WEB-INF/lib 中?

谢谢 !

4

1 回答 1

19

其他文件夹用于不同类型的共享库。例如,如果您有 10 个应用程序使用相同的数据库驱动程序,那么实际上没有理由为每个应用程序保留一个数据库驱动程序 jar(即 10 个 jar)。在这种情况下,您可以简单地将其放入jboss/server/<server config>/lib.

  • jboss/server/<server config>/lib:这里的所有库都在给定服务器配置中的所有应用程序之间共享
  • jboss/common/lib:在所有服务器配置之间共享
  • jboss/lib:这些是服务器本身的库(如果我没记错的话,它们也在您的应用程序类路径中)
  • jboss/lib/endorsed: 这个和上面一样,只是如果你放了一个lib,在jboss/lib中总是会在类似的lib之前找到它。这个想法类似于JDK的Endorsed Standards Override Mechanism
于 2010-06-17T20:05:53.613 回答