开源软件名称(OpenSource Name):devopstrainingblr/Maven-Web-Profiles开源软件地址(OpenSource Url):https://github.com/devopstrainingblr/Maven-Web-Profiles开源编程语言(OpenSource Language):Java 100.0%开源软件介绍(OpenSource Introduction):Maven Environment specific BuildAssume we have two different environments staging and production. Every time we want to build war for these environment, it is expected that configuration file(here it is application.properties) for the target environment is comes with war file. PrerequisiteMaven Our configuration file is present
We will see how we can use profile to achieve goal. We will define three profiles
devThis is a default profile. This is used in eclipse stagingThis profile is used to build war for staging productionThis profile is used to build war for production <profiles>
<profile>
<id>local</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>staging</id>
<properties>
<env>staging</env>
</properties>
</profile>
<profile>
<id>production</id>
<properties>
<env>production</env>
</properties>
</profile>
</profiles> While building war, we will filter our configuration file in resource section as shown below <filters>
<filter>src/main/resources/${env}/application.properties</filter>
</filters>
<resources>
<resource>
<directory>src/main/resources/${env}</directory>
<filtering>true</filtering>
<includes>
<include>application.properties</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<excludes>
<exclude>**/application.properties</exclude>
</excludes>
</resource>
</resources> And we have to use profile option of maven to build war file for different environment. For staging it is mvn clean install -P staging For production it is, mvn clean install -P production |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论