让我先说一下,我是Maven / Spring的新手,当我的目录不遵循首选的Maven结构时,我很难搞清楚要做什么.
我通过这个tutorial遵循了使用Angular 2和Spring Boot设置项目的说明.本教程创建了两个模块,前端和后端,以及相应的pom.xml和一个父pom.xml.我可以使用我的IDE,IntelliJ或从后端目录运行“mvn spring-boot:run”来运行应用程序.但是,对于部署,我希望将应用程序打包到WAR文件中以放入Tomcat服务器.我不确定如何使用我目前拥有的pom.xml来做到这一点.我很确定它与我的目录结构有关,但是我不确定是否应该重构我的应用程序,或者有一种方法可以配置Maven将这两个模块放入生成预期的WAR文件中.
我找到了类似的答案here,但最后一部分是什么让我失望.我没有/ src / main / webapp / WEB-INF文件夹,我不确定在哪里制作它.
我的申请结构如下:
AppRoot
-backend
--src
---main
----java
--pom.xml
-frontend
--src
---main
----frontend
--pom.xml
-pom.xml
我的root pom.xml是:
前端pom.xml:
后端pom.xml:
如果有更多信息需要,请告诉我.
最佳答案
经过大量的搜索后,我遇到了Maven War Plugin.这使我能够将必要的前端文件拉到后端,以便成功创建我的WAR文件.需要进行的更改如下:
后端pom.xml –
在描述标签后添加:
然后,在构建标记内部,插件内部添加此插件:
除此之外,您可以保持现有的pom.xml与仅后端pom.xml需要包含war包装相同.它最终成为一个相当简单的答案.
还需要在package.json中设置base-href.注意“构建”:
"scripts": {
"ng": "ng","start": "ng serve --proxy-config proxy.conf.json","test": "ng test","lint": "ng lint","e2e": "ng e2e","build": "ng build --base-href=\"./\""
},
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。