<profiles>
标签:
<profiles>
<profile>
<id>dev</id>
<properties>
<env>dev</env>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>prod</id>
<properties>
<env>prod</env>
</properties>
</profile>
</profiles>
<build>
标签:
<build>
<finalName>chain</finalName>
<filters>
<filter>conf/${env}.properties</filter>
</filters>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
...
</resources>
conf/dev.properties
文件:
env.db.url:jdbc:mysql://xxx.xxx.xxx.xxx:3306/dbname?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8
env.db.driverClassName:com.mysql.jdbc.Driver
env.db.username:root
env.db.password:123456
conf/prod.properties
文件:
env.db.url:jdbc:mysql://xxx.xxx.xxx.xxx:3306/dbname?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8
env.db.driverClassName:com.mysql.jdbc.Driver
env.db.username:root
env.db.password:123456
src/main/resources
目录下的文件引用环境变量的方式:
备注:该目录在pom.xml
文件中的<build>
标签中定义
database.username=${env.db.username}
执行打包命令:
mvn package -P <env>
src/main/resources
目录下文件中的${env.db.username}
会直接被替换成对应的profile
文件中的值。
如:原来的:
database.username=${env.db.username}
打包后会直接替换成:
database.username=root