Maven 学习笔记 多环境配置
多环境配置
<!--创建多环境-->
<profiles>
<!--定义具体的环境:生产环境-->
<profile>
<!--定义环境对应的唯一名称-->
<id>pro_env</id>
<!--定义环境中专用的属性值-->
<properties>
<jdbc.ur1>jdbc:mysql://127.1.1.1:3306/ssm_db</jdbc.url>
</properties>
<!--设置默认启动-->
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<!--定义具体的环境:开发环境-->
<profile>
<id>dev_env</id>
<!--参考生产环境,配置开发环境具体参数-->
</profile>
</profiles>
加载指定环境
- 加载指定环境配置
mvn 指令 -P 环境id
- 范例
mvn install -P pro_env
案列
<!--创建多环境-->
<profiles>
<!--测试环境-->
<profile>
<id>test</id>
<properties>
<dataSource.ip>192.168.1.111</dataSource.ip>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<!--开发环境-->
<profile>
<id>dev</id>
<properties>
<dataSource.ip>localhost</dataSource.ip>
</properties>
</profile>
</profiles>
<resources>
<!-- 顺便解决 idea 默认不打包 src/main/java 下 mapper 文件的问题 -->
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
<!-- 定义需要打包的配置文件 -->
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
<filtering>true</filtering><!--开启过滤。配置文件被打包时将用真值替换站位符号-->
</resource>
</resources>
properties/db.properties
jdbc_url=jdbc:mysql://${dataSource.ip}:3306/demo?autoReconnect=true&useUnicode=true&characterEncoding=utf-8
jdbc_username=root
jdbc_password=root
选则环境,再打包就行了。
注意:Idea中直接启动调试出错的问题
这里选择的profile
对打包有效。但Idea中直接启动/调试时并不知道,需要配置一下启动参数详见下文 :
IntelliJ IDEA 记学习笔 - Tomcat 启动调试 Maven profiles 区分环境