1.问题产生背景

这周在linux环境下用jar 部署springboot项目的时候遇到了一个问题,使用以下命令启动项目时候:

nohup java -jar XXX.jar  --spring.profiles.active=prod>> Log.log &

启动时候环境变量是dev 没有切到prod上

2.问题产生原因 

启动类的run方法中没有传args参数,一般来说新建一个springboot项目会直接创建一个启动类,但是这回是新建maven项目,然后引入springboot相关的依赖,启动类是自己手写的,导致agrs参数没有传入。

@SpringBootApplication
public class SpringbootwebApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringbootwebApplication.class);
        for(String arg:args){
            System.out.println(arg);
        }
    }
}

3.解决方法

在run方法中传入agrs参数即可。

@SpringBootApplication
public class SpringbootwebApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringbootwebApplication.class, args);
        for(String arg:args){
            System.out.println(arg);
        }
    }
}

 

Logo

更多推荐