java - 将多个 Maven 项目组合成一场 war

标签 java spring maven tomcat

我有这样的 Maven 结构:

Parent Module
|--Backend services module (Spring) 
|--Web module (angularjs)

当我将它们作为单独的 war 文件运行时,一切正常。 但我想做的是将它们作为单个 .war 文件构建和运行。

于是我做了一个web module打包成war,并且给了他一个backend jar的依赖。当我在 tomcat 上运行它们时,web 模块运行良好,但 Spring 服务(后端)根本不起作用。当我单独启动后端服务模块时,我在日志“信息:初始化 Spring 根 WebApplicationContext”等中得到了这个。但是当后端依赖于另一个项目时,这不会发生。

主要的 web.xml 和 spring context.xml 文件位于后端模块中。

有办法吗?

最佳答案

"Main web.xml and spring context.xml files are located in the backend module."

您提到 Backend 现在是一个 JAR,因此它不能包含 web.xml(在 WEB-INF 下)。 Web模块是应该包含webapp(包括web.xml)和初始化Spring等的模块。

在我看来,它们应该是同一个WAR。您可以使用后端(如果它已经是包含 web.xml 的 WAR),并添加来自 Web 的所有 HTML/JS。

关于java - 将多个 Maven 项目组合成一场 war ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36519955/

相关文章:

java - 如何从另一个 Activity 调用 ArrayAdapter 以使用 strings.xml 数组从 ArrayAdapter 中删除项目?

java - 区别 webcontent 和 webapp

java - 使用 Maven 跳过 Jhipster 中的 Java 测试进行构建

java - JTable setRowSelectionInterval 对 JButton 没有影响

java - 无法实现OnMapReadyCallback

java - 使用 Jackson 解析器时 Android verifyError 崩溃

java - 我可以使用 Spring Javaconfig 创建一个原型(prototype)范围的 bean 吗?

java - Hibernate映射一个类到两个表(两个表多对一关系)

java - 禁止获取 p2 存储库索引

java - 未正确定义ubuntu java_home上的maven2