【问题标题】:Interactive Application Deployment on JBossJBoss 上的交互式应用程序部署
【发布时间】:2011-08-23 14:45:35
【问题描述】:

在 JBoss AS 7 中,有没有办法以交互方式部署应用程序?换句话说,不是在部署之前手动创建 JBoss 部署描述符(例如 jboss-web.xml),JBoss 有没有办法提示部署者提供成功部署所需的信息和/或是否有可以以编程方式或通过脚本调用的 API 来执行此操作?例如,如果应用程序定义了在代码中注释的资源引用或环境条目 (@Resource),那么部署者如何知道该资源引用必须在部署时绑定?

在某些背景下,我一直使用 IBM WebSphere Application Server 作为我的主要 Java EE 应用程序服务器,它在管理控制台中提供 Java API、wsadmin 命令和 GUI 向导,提示部署人员提供所需的部署信息部署应用程序并在部署期间生成自己的自定义描述符文件。我希望其他应用服务器,尤其是 JBoss 7,也能提供类似的功能。

其中一个目标是能够自动化部署各种可移植 Java EE 应用程序(即不具有包含部署信息的 JBoss 特定描述符的应用程序),并防止部署人员手动执行部署,不仅熟悉应用程序和模块部署描述符,更重要的是,必须在部署时管理代码中包含的所有注释(例如 @987654325 @注解)。

特别是,我正在寻找 Java EE specification 中满足此要求:

EE.2.12.4 部署描述符和注释

Java EE 产品提供者需要提供一个部署工具来解释 Java EE 部署描述符和类文件注释,并允许部署者将应用程序组件的需求映射到特定 Java EE 产品和环境的功能。

虽然规范对于这意味着什么以及它是如何实现的有些模棱两可,但在我看来,WebSphere Application Server 完美地满足了这一要求,而许多其他需要手动创建的应用程序服务器(例如 JBoss)部署之前的自定义描述符数量不足。

另外请注意,我已将同样的问题发布到 JBoss 社区论坛(herehere),但没有收到任何回复。

【问题讨论】:

    标签: jakarta-ee deployment jboss jboss7.x


    【解决方案1】:

    我知道,线程有点旧,但无论如何。我过去曾使用过 Websphere,并且我知道您所描述的部署工具。而且,不,任何版本的 JBoss 都没有类似的东西。

    当您考虑规范的措辞时,真的很奇怪(“...必须提供部署工具”)

    【讨论】:

      【解决方案2】:

      我认为您正在寻找JBoss Web Management Console,它提供了一个用于部署 EAR、WAR 和 JAR 文件的 Web 界面。它具有一些管理和维护功能,但没有您建议的动态依赖管理。

      【讨论】:

      • 感谢@jpredham,但我关心的不是 Web 控制台或其他管理功能的可用性。我知道 JBoss 现有的管理客户端,但我感兴趣的是它们中的任何一个(或者是否有任何未明确记录的)可以执行我所描述的功能,以便 JBoss 负责向部署者指示什么它需要部署的信息。
      【解决方案3】:

      除了 jpredham 建议的管理控制台之外,还有一个 maven 插件可以满足您的需求。新版本7.0.1已经发布,有blog post描述如何使用maven插件添加资源。

      【讨论】:

      • 感谢@jamezp,但 maven 插件似乎也不能满足我的要求。我不仅对执行应用程序部署的工具感兴趣,而且对该工具能够提示部署者提供部署所需的信息以及更细粒度、交互式和/或基于参数的指定方法感兴趣该信息。
      • @shelly 总是可以选择使用detyped management API。必须创建自己的管理 UI 可能并不理想,但我们始终欢迎贡献:-)。您也可以随时提出功能请求。
      猜你喜欢
      • 1970-01-01
      • 2013-04-22
      • 2018-06-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-04
      • 2013-03-16
      • 1970-01-01
      相关资源
      最近更新 更多