0

最近,我不得不将一个应用程序从 Tomcat 移植到 Wildfly,我目前正在为 Wildfly 设置模块目录。

这需要一点学习,但我想出了如何将 Spring、ActiveMQ RA 和其他几个库设置为模块。这是有效的,但它让我担心模块目录的未来维护。我不得不手工制作整个目录,我担心必须为每个新应用程序需要的每个新依赖项都这样做。

维护 JBoss 模块的最佳实践是什么?模块目录是否放入一些版本控制系统(如 SVN)来检测和传播更改?

假设我的应用程序需要一个新框架。据我了解,我需要下载 jars,为 jars 创建一个模块目录,然后为我需要 Wildfly 的每个环境重复此过程。当其他应用程序正在运行时需要执行此操作时会发生什么?从长远来看,这似乎非常耗时。

我觉得有一种更好的方法可以做到这一点,我要么没有意识到,要么对 JBoss 太陌生而无法理解。

使用 Maven 和 pom,连接到本地或远程 repo 非常简单,并且构建了整个目录并自动在任何地方可用。我觉得 JBoss 模块必须有类似的东西。

我的问题的核心是:其他人如何使用 JBoss 模块并在生产环境中对其进行维护?我应该阅读或使用哪些资源?

谢谢你的时间。

凯文

4

1 回答 1

0

我也在为此寻找解决方案。

我以前参与过使用 JBoss CLI 的项目。但我不喜欢那样。它增加了复杂性,因为 JBoss CLI 脚本是开发人员需要了解的新内容。文件中的更改更容易理解。

我在想这个:

  • 将目录放入 git-repo 中,该目录具有与所使用的 JBoss 版本完全相同的目录结构。
  • standalone-full.xml被放入git-repo/jboss-eap-6.4/standalone/configuration/standalone-full.xml
  • module.xml- 文件被放入git-repo/jboss-eap-6.4/modules/system/layers/.../module.xml

还有一个setup.sh将:

  • 将文件从 git-repo 复制到 JBoss 的安装目录。
  • modules.xml从配置的 Nexus 服务器下载 所需的任何 jar 文件。并将它们放入正确modules的目录中。

好处是:

  • git 中没有二进制文件。
  • 可以跟踪对 JBoss 配置的更改。
  • 该设置可以是针对开发人员或 docker 映像的更大脚本设置的一部分...
于 2017-11-06T08:33:46.613 回答