1

我特别问这个问题,因为 JBoss AS 7+ 已经完全改变了 360 度,迫使应用程序开发人员完全考虑 JBoss 模块。这可以防止早期的类路径地狱问题等,并鼓励干净的模块化思维等。它还声称快速启动时间等。

一切都很好,但我主要担心的是,请确认您是否有同感:

  1. JBoss 坚持将 jboss-deployment-structure.xml 文件放在 WEB-INF 中。这将使 WAR 文件根本不可移植,因为它现在包含应用程序服务器特定的配置文件。我担心互操作性。

  2. 我仍然对所需的大量 XML 配置感到紧张 - 为您要添加的每个依赖项创建一个模块目录结构,为该依赖项创建一个 module.xml,为非模块创建一个 jboss-deployment-structure.xml 条目或 WEB-INF/lib 中的库的清单条目。等等等等。这将需要开发人员花费足够的时间和精力来成为配置专家或聘请专家或购买支持 - 从长远来看,对于任何团队和公司来说都是一笔巨大的成本。

4

1 回答 1

2

jboss-deployment-structure.xml 没有任何东西使它不可移植。如果其他应用程序服务器不使用该文件,它们将简单地忽略它。

如果您想在应用程序中使用依赖项,则无需创建模块。如果您想在多个部署之间使用公共依赖项,您只会这样做。例如 JDBC 驱动程序库。

无需为 WEB-INF/lib 中的库创建 jboss-deployment-structure.xml 或添加清单条目。唯一需要 jboss-deployment-structure.xml 的情况是,如果您想排除服务器依赖项,例如 log4j,或者在部署范围之外添加未自动添加的依赖项。可能还有其他一些用例,但这些是最常见的。

于 2012-10-31T16:45:41.543 回答