【问题标题】:Deploy web application without using Websphere deployment manager在不使用 Websphere 部署管理器的情况下部署 Web 应用程序
【发布时间】:2016-08-25 06:51:16
【问题描述】:

每当我们的开发团队修改一个 Web 应用程序的源代码时,我们都需要构建一个 EAR,登录到 WebSphere 的部署管理器,在我们的测试服务器中更新整个应用程序并重新启动该应用程序。

但有时更改可能只涉及单个 Java 文件。是否有任何替代方法可以将更改部署到测试服务器以加快我们的开发生命周期,例如将 XXX.class 复制到 WebSphere 文件夹中的特定位置?

【问题讨论】:

  • ... 如果您遵循 CTRL+S 热部署风格,那么您需要以分解形式拥有 EAR 文件,即即使文件夹的名称以 .jar 和 .war 或 .ear 结尾,也需要有文件夹。这只是一个想法,可能对您没有太大帮助。
  • WebSphere 的哪个版本,是“完整配置文件”还是 Liberty?
  • 老实说,我不知道我是否应该在这里写一个新答案,或者只是从另一个问题指向我的答案,但步骤与可能的答案相同:stackoverflow.com/a/10852395/796761

标签: java jakarta-ee websphere websphere-7


【解决方案1】:

您可以为 Websphere 应用程序执行所谓的Hot Deployment。但是在这种情况下,您不会更改/部署.class 文件,至少您需要一个正在更改的.jar 文件。但是进行此设置的程序与相关应用程序密切相关。而且它不能放在 StackOverflow 上的单个帖子中,因为它属于教程网站,而这不是一个。

我建议您在IBM Knowledge center 上阅读有关Hot Deployment 的信息。如果您愿意按照页面中的步骤进行操作,这将对您有所帮助。

注意:不隶属于 IBM。

【讨论】:

【解决方案2】:

只是进一步的建议:使用上述建议并在此处记录的热部署过程。

https://www.ibm.com/support/knowledgecenter/SSAW57_8.5.5/com.ibm.websphere.nd.doc/ae/trun_app_hotupgrade.html

在第 4 步中,将“更新文件的轮询间隔”设置为零 (0) 以禁用动态重新加载。这意味着,在热部署应用程序工件之后,您必须重新启动应用程序以实现更改,而不是依赖应用程序服务器通过部署的模块轮询更改,然后重新启动 Web 模块或整个应用程序,具体取决于哪个部分改变了。手动重新启动应用程序通常比动态重新加载更快。

最后,将轮询间隔设置为零不会影响 JSP 的动态重新加载。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多