开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 29 天,点击查看活动详情
对于企业级项⽬,⽆论是进⾏本地测试,还是测试环境测试以及最终的项⽬上线,都会涉及项⽬的打包操作,对于每个环境下项⽬打包时,对应的项⽬所有要的配置资源就会有所区别,实现打包的⽅式有很多种,可以通过ant,获取通过idea ⾃带的打包功能实现项⽬打包,但当项⽬很⼤并且需要的外界配置很多时,此时打包的配置就会异常复杂,对于maven 项⽬,我们可以⽤过pom.xml 配置的⽅式来实现打包时的环境选择,相⽐较其他形式打包⼯具,通过maven 只需要通过简单的配置,就可以轻松完成不同环境先项⽬的整体打包。
⽐如下⾯这样⼀个项⽬,项⽬中配置了不同环境下项⽬所需要的配置⽂件,这时候需要完成不同环境下的打包操作,此时通过修改pom.xml 如下:
9.1. 建⽴对应的⽬录结构
使⽤idea创建项⽬,⽬录结构可能会缺失,需要通过⼿动添加对应的⽬录。
1)添加 Java 源⽂件夹
选择项⽬的 main ⽂件夹,右键选择New,选择Directory
2)添加资源⽂件夹
选择项⽬的 main ⽂件夹,右键选择New,选择Directory
3)添加对应的⽂件夹⽬录,及添加不同环境下对应的配置⽂件。(本地环境、测试环境、正式环境)
9.2. 添加Profile配置
放在pom.xml中
<!-- 打包环境配置 开发环境 测试环境 正式环境 -->
<profiles>
<profile>
<id>dev</id>
<properties>
<env>dev</env>
</properties>
<!-- 未指定环境时,默认打包dev环境 -->
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>test</id>
<properties>
<env>test</env>
</properties>
</profile>
<profile>
<id>product</id>
<properties>
<env>product</env>
</properties>
</profile>
</profiles>
9.3. 设置资源⽂件配置
<!-- 对于项⽬资源⽂件的配置放在build中 -->
<resources>
<resource>
<directory>src/main/resources/${env}</directory>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
<include>**/*.tld</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
9.4. 执⾏打包操作
打开Run/Debug Configuarations窗⼝,输⼊对应的打包命令
此时对应打包命令:
clean compile package -Dmaven.test.skip=true,打包默认环境(开发环境)并且跳过maven 测试操作clean compile package -Ptest -Dmaven.test.skip=true,打包测试环境并且跳过maven 测试操作clean compile package -Pproduct -Dmaven.test.skip=true,打包⽣产环境并且跳过maven 测试操作
打包成功:
不同的项⽬打包的⽂件不⼀样,⼀般来说,普通java项⽬打成jar包,web项⽬打成war包: