springboot不同环境使用不同配置文件打包

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_19671783/article/details/89306595

在POM文件中新增以下配置

<profiles>
    <profile>
      <id>dev</id>
      <properties>
        <package.environment>dev</package.environment>
      </properties>
      <!-- 是否默认 true表示默认-->
      <activation>
        <activeByDefault>true</activeByDefault>
      </activation>
    </profile>

    <profile>
      <id>stage</id>
      <properties>
        <package.environment>stage</package.environment>
      </properties>
    </profile>
  </profiles>

在application.yml中新增以下参数

spring:
  profiles:
    active: @package.environment@

同时新增配置文件application-{package.environment}.yml

按照POM文件中,我的新增配置文件分别为application-dev.yml application.stage.yml,如下图所示

在application-dev.yml中配置文件内容为

something: hcfdevv

在application-stage.yml中配置文件内容为

something: hcfstage

测试使用该配置

@RestController
@SpringBootApplication
public class HelloController extends SpringBootServletInitializer {

    @Value("${something}")
    String something;

    @RequestMapping("hello")
    String hello() {
        return something;
    }

    public static void main(String[] args) {
        SpringApplication.run(HelloController.class, args);
    }
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(HelloController.class);
    }

}

打包测试,运行打包代码

mvn package -P dev

得到war包

扫描二维码关注公众号,回复: 5911610 查看本文章

将war包放入tomcat的webapps下,启动Tomcat

显示application-dev.yml中配置的参数内容

运行打包代码

mvn package -P stage

得到war包

将war包放入tomcat的webapps下,启动Tomcat

显示application-stage.yml中配置的参数内容。

猜你喜欢

转载自blog.csdn.net/sinat_19671783/article/details/89306595