spring boot项目我们都习惯以内嵌tomcat方式、直接打包成jar,运行时使用:

  java -jar XXX.jar  --spring.profiles.active=alpha

以此激活xxx-alpha.properties文件。

但是--spring.profiles.active=alpha参数到底是怎么传递进spring boot里面启动的呢?

它是以下面的方式传递参数进去的。

1 @SpringBootApplication
2 public class CloudGitConfigServerApplication {
3 
4     public static void main(String[] args) {
5         args = new String[1];
6         args[0] = "--spring.profiles.active=alpha";
7         SpringApplication.run(CloudGitConfigServerApplication.class, args);
8     }
9 }

因此,如果有两个参数,可以用逗号隔开,变化一个数组参数传递进去。

@SpringBootApplication
@EnableEurekaServer
public class FirstServer {
    public static void main(String[] args) {
        // 读取控制台输入,决定使用哪个profiles
        Scanner scan = new Scanner(System.in);
        String profiles = scan.nextLine();
        new SpringApplicationBuilder(FirstServer.class).profiles(profiles).run(args);
    }
}

 

相关文章:

  • 2022-12-23
  • 2021-12-22
  • 2022-12-23
  • 2022-02-02
  • 2021-10-01
  • 2022-12-23
  • 2022-03-10
  • 2018-07-02
猜你喜欢
  • 2021-11-22
  • 2021-07-01
  • 2022-12-23
  • 2022-01-19
  • 2022-01-02
  • 2019-06-27
  • 2022-02-10
相关资源
相似解决方案