在日常的开发中,我们的项目经常有几套环境,开发环境、测试环境、生产环境,就有几套配置文件,如果频繁修改配置文件难免容易出错。
maven提供了一套解决方案< profiles>标签。
**
一、增加pom.xml文件配置**
1.配置文件路径
< profiles>
<!-- 本地开发环境 --><profile><!--执行打包命令时将使用此处的id进行定位 --><id>dev</id><properties><!--此处为对应的环境放置配置文件的目录,上一步创建的为dev,这里设置为dev。下面两个目录配置参照此处 --><env>dev</env></properties><activation><!--此处将dev设置为默认环境 --><activeByDefault>true</activeByDefault></activation></profile><!-- 测试环境 --><profile><id>test</id><properties><env>test</env></properties></profile><!-- 生产环境 --><profile><id>prod</id><properties><env>prod</env></properties></profile></profiles> 创建配置文件夹,及不同配置文件
3.在build节点中配置文件过滤器
4.配置打包插件
< plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><!--这里写上main方法所在类的路径 --><configuration><mainClass>com.travelsky.itwtcs.ItwApplication</mainClass></configuration><executions><execution><goals><goal>repackage</goal></goals></execution></executions></plugin> </plugins>二、使用cmd进行打包
1.进入pom.xml所在目录下
运行cmd命令:mvn package -Pdev //dev表示你要打包的环境
运行命令后会在target下生成jar包,它主要是通过你配置的文件路径找到对应的文件并将它copy出来覆盖最外面的配置文件,达到更换配置的目的。
2.运行jar 进入target目录下 java -jar xxx.jar
三、每次都是用cmd去打包难免麻烦
1.创建并编写cmd脚本bat文件
@echo off
@echo ---------------------- testing environment ----------------------System jar file target
mvn package -Ptest
@pause
2.将bat文件放入pom.xml所在目录下,双击运行。
3.当我将bat文件copy到eclipse下去运行却报错,路径错误。
原来在eclipse中执行bat那么默认会是用eclipse的路径,而不是你项目文件夹路径,修改bat文件
@echo off
@echo ---------------------- testing environment ----------------------System jar file target
cd %~dp0
mvn package -Ptest
@pause
4.双击运行
5.成功