Java,ear 文件的部署策略

标签 java deployment xhtml ear hotswap

Build man. -> maven

ide -> idea

app server -> weblogic 12.1.2

我的项目由一个ear文件组成,其中有两个war文件(位于lib下,未分解)和几个jar文件。

我部署了ear文件,当我在任何java文件中进行更改时,热交换工作正常(任何常规更改)。 然而,当我在任何 xhtml(主要由 jsf 组成)中进行更改时,为了看到这些更改,我必须进行另一个构建和部署。

我需要在开发阶段可以遵循的任何策略。欢迎大家提出意见。

最佳答案

以下步骤对我非常有帮助:

  • 确保最终版本包含分解版本。使用 make 进行构建管理(idea 默认)可以非常轻松地实现这一点,或者如果想坚持使用 Maven 进行构建管理,则需要一个插件来创建分解的最终产品,例如: http://maven.apache.org/plugins/maven-war-plugin/exploded-mojo.html

  • 通常编辑的资源文件或 View (在我的例子中是 xhtml)被标记为源文件。这可以通过“将目录标记为”选项来实现,每次更新项目时,标记为源根目录中的文件都可以进行热交换。

但是我必须承认,这些对我来说还远远不够。每次更改类的签名时,我仍然需要重新部署,这种情况很常见,而且非常浪费时间。

为了解决剩下的类重新加载的痛苦,我和我的团队使用了 JRebel,我目前对此非常满意。请记住,该产品相对昂贵,我也听说过开源类重新加载器替代品,但坦白说还没有尝试过:

关于Java,ear 文件的部署策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23493263/

相关文章:

java - 以跨平台方式启动 Java 应用程序

asp.net - 更新在IIS上运行的实时网站的最佳实践

html - 填充行内元素的顶部和底部

javascript - DOM 级别有何不同,它们之间如何相互关联?

Java哈希表搜索函数

java - 从 Java 调用 Python 脚本。我应该使用 Docker 吗?

java - 如何像这样将 docker-compose 部署到网络上

xslt - 使用 XSLT 2.0 从 XSL 转换输出最小化标签

java - 生成随机数字对,不重复

java - Android Studio 中的 Activity 背景