服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - springboot项目启动的时候参数无效的解决

springboot项目启动的时候参数无效的解决

2021-12-27 00:50sky_jiangcheng Java教程

这篇文章主要介绍了springboot项目启动的时候参数无效的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

springboot项目启动的时候参数无效

今天启动一个springboot项目发现启动的时候输入的参数都是不能生效,但是yaml文件的配置却生效了,排查了半天,最后发现原来启动类里面有问题,原代码如下

?
1
2
3
4
5
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class);
    }
}

改动run方法的参数,添加args参数如下

?
1
2
3
4
5
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class,args);
    }
}

启动之后,指定参数即可生效。

springboot项目启动参数设置问题

Spring boot项目常用的几种启动方式

Maven启动指定Profile通过-P,如mvn spring-boot:run -P test,但这是Maven的Profile。

  • 如果要指定spring-boot的spring.profiles.active,则必须使用mvn spring-boot:run -Drun.profiles=test
  • 如果使用命令行直接运行jar文件,则使用java -jar -Dspring.profiles.active=test demo-0.0.1-SNAPSHOT.jar
  • 如果使用开发工具,运行Application.java文件启动,则增加参数–spring.profiles.active=test

war包部署方式

对于war包部署方式在启动类中需要做如下配置

?
1
2
3
4
5
6
7
8
9
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);
    }
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/sky_jiangcheng/article/details/111253122

延伸 · 阅读

精彩推荐