【发布时间】:2015-02-28 15:18:55
【问题描述】:
我需要将 2 个包部署到 Wildfly:
1. EAR 文件 - 包含所有服务器端 (JavaEE) 代码。
2. WAR 文件 - 包含网站代码 (HTML,JS,CSS...)。
为了使网站路径类似于localhost:8080/somename/index.html,我需要在Maven 中指定<finalName>somename</finalName>。另一方面,EAR 文件包含 RESTful 内容,为了使 REST 位于 somename 上下文根目录下,我将适当的标签添加到 maven-ear-plugin。
现在...我猜Wildfly 不喜欢用同名注册两件事,所以我无法部署网站。
解决这个问题的正确方法是什么?将两个同名项目合并,只交付一个包??也许改变 EAR 的上下文根,因为它是“RESTful voodoo 的东西”,这并不重要?
我真的很想在同一个上下文根目录下注册这两个,但将两个项目分开。
【问题讨论】:
-
为什么不简单地将多模块 Maven 项目与单个 WAR 部署一起使用?您可以将所有 EJB 和 REST 内容放入单独的 Maven 模块中,但仍然构建单个 WAR,其中 EJB 和 REST 模块最终位于 WEB-INF/lib 中。
-
一切都有自己的模块。所有服务器端代码都打包在一个包含一个 ejb 文件和一个 war 文件(用于 REST)的 ear 文件中。该网站在另一场战争中单独打包,以便在需要时替换它,而不对服务器代码做任何事情
标签: maven jakarta-ee wildfly