今天启动一个springboot项目发现启动的时候输入的参数都是不能生效,但是yaml文件的配置却生效了,排查了半天,最后发现原来启动类里面有问题,原代码如下
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class);
}
}
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class,args);
}
}
启动之后,指定参数即可生效。
Maven启动指定Profile通过-P,如mvn spring-boot:run -P test,但这是Maven的Profile。
对于war包部署方式在启动类中需要做如下配置
public class TestApplication extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(TestApplication.class, args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(TestApplication.class);
}
}
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。