java -jar启动jar包时携带参数不起效的解决办法

  • Post author:
  • Post category:java

在测试springCloud例子的时候,将项目打成jar包,并通过

java -jar xxxxx.jar --spring.profiles.active=xxx

不能实现命令行控制

通过各种资料的查询,发现要将命令改成这样子:

java -Dspring.profiles.active=xxx -jar xxx.jar 

原因分析:

命令行的参数是通过 main函数中的args参数接收的,立马去查看启动类,果然。

public class EjlerpSaleOrderDtsServerApplication {
    public static void main(String[] args) {
        try {
            SpringApplication.run(EjlerpSaleOrderDtsServerApplication.class);
        }catch (Exception e){
            e.printStackTrace();
        }
    }
}

修改成下面这样就可以了:

public class EjlerpSaleOrderDtsServerApplication {
    public static void main(String[] args) {
        try {
            SpringApplication.run(EjlerpSaleOrderDtsServerApplication.class, args);
        }catch (Exception e){
            e.printStackTrace();
        }
    }
}


版权声明:本文为chu1109785217原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。