maven-war-plug插件的小煎熬
maven-war-plug插件的小煎熬
什么叫百度一小时 官网十分钟啊,Leader要我按要求整改项目构建规范,规范要求的war|jar程序包为artifactId-version
的命名格式。
背景
项目是老项目了,使用的是前后端不分离的JSP部署在Tomcat上跑的。
我需要规范化Maven构建,通过集火(不好意思,永劫无间打多了)激活Profiles的属性,来指定采用哪种配置文件来打包构建。
这个老项目当初引入了一个SSO包,这个SSO分了uat环境、beta环境、pro环境等…不同的环境要传入不同的参数。当初这个项目为了解决不同环境的打包部署,将resources下的WEB-INF中的Web.xml分成几份来对应uat、beta、pro等,再写个脚本将指定环境的Web.xml覆盖到resources下的WEB-INF中,然后用Maven进行package。
改良
- 在resources下建立envs文件夹,再建立uat、beta、pro等文件夹,放入符合环境的Spring配置文件、Web.xml文件
- 修改POM
- 创建profiles,为每个环境指定profile
- 调整build,配置maven-war-plug插件
问题与解决
问题来了,maven-war-plug插件我不熟啊,它的configuration什么的,怎么配啊?
百度,百度啊。
行,然后我开始从各个方面百度了怎么先排除原本WEB-INF下的Web.xml,然后再引入Web.xml到WEB-INF文件夹下。
百度了一小时,问题依然没有解决,百度到的方案都试了,没有达成目的,我急了。
我至于开始到Apache官网上看这个插件的参数,直到我看到了webXml
这个配置…
我才发现我的思路错了,不需要那样做,maven-war-plug支持配置webXml
来指定web.xml文件…
maven-war-plug插件的小煎熬
https://blog.gugu.dev/2024-02-21/maven-war-plug插件的小煎熬/