Home >Java >javaTutorial >How to quickly switch profiles using Spring Boot combined with IDEA's own Maven plug-in

How to quickly switch profiles using Spring Boot combined with IDEA's own Maven plug-in

王林
王林forward
2023-05-14 08:37:051717browse

1. Foreword

IDEA is currently the most used development tool among Java developers. It has a simple design style, powerful integration tools, and convenience shortcut keys.

In the entire development and operation and maintenance cycle of the project, our projects often need to use different file configurations according to different environments.

For example, the following part:

  • Default: application.properties/yml

  • ##Shared configuration:

    application-common.properties/yml

  • Development environment:

    application-dev.properties/yml

  • Production environment:

    application-prod.properties/yml

  • Test environment:

    application-test.properties/yml

In actual use, configure it in the

application.yml file:

spring:
  profiles:
    active: dev

or

application.properties file:

spring.profiles.active=dev

After setting

Spring Boot will activate the configuration file of application-${active}.properties/yml.

In this way, we only need to modify this configuration every time we need to switch environments. However, this method also has detailed shortcomings. For example, this configuration needs to be modified every time you switch environments. After modification, there is also the risk of file misinformation

Git. This is acceptable for a single project, but for Spring CloudFor microservice projects, the operation is very troublesome.

2. Configuration details

Combined with

IDEA’s built-in maven plug-in to achieve switching between different configurations. Just check the box each time you switch environments. .

How to quickly switch profiles using Spring Boot combined with IDEAs own Maven plug-in

2.1 pom.xml modification

Add the following content:

<build>
    <resources>
	    <resource>
	    	<directory>src/main/resources</directory>
            <!-- 指定目录下的文件通过maven过滤器 -->
	    	<filtering>true</filtering>
	    </resource>
    </resources>
</build>

<profiles>
    <profile>
        <id>dev</id>
        <properties>
            <!-- 环境标识,需要与配置文件的名称相对应 -->
            <profile.active>dev</profile.active>
            <nacos.username>nacos</nacos.username>
            <nacos.password>nacos</nacos.password>
        </properties>
        <activation>
            <!-- 默认环境 -->
            <activeByDefault>true</activeByDefault>
        </activation>
    </profile>
    <profile>
        <id>test</id>
        <properties>
            <!-- 环境标识,需要与配置文件的名称相对应 -->
            <profile.active>test</profile.active>
            <nacos.username>nacos</nacos.username>
            <nacos.password>nacos</nacos.password>
        </properties>
    </profile>
</profiles>

MavenFilter The placeholder @variable name@ in the file will be replaced. You can view the compiled file and the original placeholder will be replaced by the variable value.

2.2 Modification of bootstrap.yml/application.yml

spring:
  profiles:
    active: @profile.active@

Note: The placeholder ‘@variable name configured in maven@’, my name is

profile.active

The above is the detailed content of How to quickly switch profiles using Spring Boot combined with IDEA's own Maven plug-in. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:yisu.com. If there is any infringement, please contact admin@php.cn delete
Previous article:What is Java SynchronizedNext article:What is Java Synchronized