在IDEA中启动 Spring Boot 项目时加参数的详细过程

 更新时间:2025年09月28日 10:49:23   作者:俊红de读研生活  
本文将详细介绍在IDEA中为Spring Boot启动项目加参数的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧

如何在 IDEA 中在启动 Spring Boot 项目时加参数

在日常开发中,我们经常需要在启动 Spring Boot 项目的时候,临时修改一些参数,例如 端口号运行环境(profile)日志级别 等等。除了在 application.yml 文件里修改,我们还可以通过在 IDEA 启动配置中添加参数的方式来实现。这种方式更加灵活,适合临时调试或者本地开发时使用。

本文将详细介绍在 IDEA 中为 Spring Boot 启动项目加参数的方法。

一、在application.yml中配置端口号(默认方式)

application.yml 文件中可以直接写配置,例如修改端口号:

server:
  port: 8080

启动时项目会监听 8080 端口。
不过这种方式是写死在配置文件里的,如果要频繁切换端口或者测试不同环境,就不够灵活了。

二、通过 IDEA 启动配置添加参数

在 IDEA 里,点击右上角的运行/调试配置,选择 Edit Configurations,可以看到两个常用的参数输入框:

  • VM Options
  • Program arguments

这两者都可以传参,但作用范围不同。

1.VM Options(JVM 参数)

在 VM Options 中添加参数时,使用 -D 前缀,例如:

-Dserver.port=8082 -Dspring.profiles.active=dev -Dlogging.level.root=DEBUG

特点:

  • -Dkey=value 形式,会作为 JVM 系统属性
  • Spring Boot 会自动读取并覆盖配置文件里的值。
  • 也可以用来配置一些 JVM 相关的参数(比如内存、GC 等)。

等价于在代码中调用:

System.getProperty("server.port");

2.Program arguments(程序参数)

在 Program arguments 中添加参数时,使用 -- 前缀,例如:

--server.port=8083 --spring.profiles.active=test --logging.level.root=DEBUG

特点:

  • --key=value 形式,Spring Boot 启动时会自动解析。
  • 用来覆盖 application.ymlapplication.properties 中的配置。
  • 常用来传递业务相关参数,例如运行环境、端口号、日志级别等。

三、优先级说明

Spring Boot 对配置的加载有优先级,大体顺序如下(从低到高):

  1. application.yml / application.properties(默认配置文件)
  2. application-{profile}.yml(不同环境的配置文件,例如 application-dev.yml
  3. Program arguments--server.port=8083
  4. VM Options-Dserver.port=8082

👉 如果同一个参数在多个地方都设置了,优先级高的会覆盖低的
比如:在 application.yml 中设置端口是 8080,在 Program arguments 中传 --server.port=8083,最终端口就是 8083

四、推荐用法

  • 业务参数(端口、profile、日志级别等):用 --,写在 Program arguments
  • JVM 参数(堆大小、GC 配置、系统属性等):用 -D,写在 VM Options

这样既符合习惯,也便于区分不同类型的配置。

五、总结

在 IDEA 中启动 Spring Boot 项目时,可以通过以下方式传递参数:

  1. 修改配置文件application.yml):适合固定配置。
  2. VM Options(-D):传递 JVM 系统属性或 Spring Boot 参数。
  3. Program arguments(–):传递 Spring Boot 参数,覆盖配置文件。

通过合理使用这三种方式,就能更加灵活地控制 Spring Boot 项目的启动参数。

到此这篇关于在IDEA中启动 Spring Boot 项目时加参数的详细过程的文章就介绍到这了,更多相关idea springboot启动项目加参数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java多媒体文件编码 处理工具类代码实例

    java多媒体文件编码 处理工具类代码实例

    这篇文章主要介绍了java多媒体文件编码 处理工具类使用解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • SpringBoot接入deepseek深度求索示例代码(jdk1.8)

    SpringBoot接入deepseek深度求索示例代码(jdk1.8)

    这篇文章主要介绍了SpringBoot接入deepseek深度求索的相关资料,包括建API key、封装询问Deepseek的工具方法(在配置文件中添加key值)、调用测试并确保端口一致例如8091,最后运行结果,需要的朋友可以参考下
    2025-02-02
  • Java 数据库连接池详解及简单实例

    Java 数据库连接池详解及简单实例

    这篇文章主要介绍了Java 数据库连接池详解及简单实例的相关资料,需要的朋友可以参考下
    2016-12-12
  • Java项目如何打包成Jar的实现步骤

    Java项目如何打包成Jar的实现步骤

    一般情况下我们都是使用Java项目直接部署发布,有时需要我们将写好的项目打成jar包,方便后期调用,本文主要介绍了Java项目如何打包成Jar,感兴趣的可以了解一下
    2023-11-11
  • 基于spring cloud多个消费端重复定义feign client的问题

    基于spring cloud多个消费端重复定义feign client的问题

    这篇文章主要介绍了spring cloud多个消费端重复定义feign client的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • 详解Java8 新特性之日期API

    详解Java8 新特性之日期API

    Java 8 在包java.time下包含了一组全新的时间日期API。下面通过示例给大家讲解java8 新特征日期api的相关知识,感兴趣的朋友一起看看吧
    2017-07-07
  • Spring AOP配置文件方式入门教程详解

    Spring AOP配置文件方式入门教程详解

    spring aop是一个面向切面的编程,在自己第一遍学习的时候,感觉aop没有什么作用,但是真实接触下来,感觉spring aop还是很有用途的,这篇文章主要介绍了Spring AOP配置文件方式入门教程的相关资料,需要的朋友可以参考下
    2025-11-11
  • SpringBoot中Zookeeper分布式锁的原理和用法详解

    SpringBoot中Zookeeper分布式锁的原理和用法详解

    Zookeeper是一个分布式协调服务,它提供了高可用、高性能、可扩展的分布式锁机制,SpringBoot是一个基于Spring框架的开发框架,它提供了对Zookeeper分布式锁的集成支持,本文将介绍SpringBoot中的 Zookeeper分布式锁的原理和使用方法,需要的朋友可以参考下
    2023-07-07
  • Spring中配置文件XML验证错误全面解决指南

    Spring中配置文件XML验证错误全面解决指南

    这篇文章主要为大家详细介绍了Spring中配置文件XML验证错误全面解决方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2025-11-11
  • Java双向链表倒置功能实现过程解析

    Java双向链表倒置功能实现过程解析

    这篇文章主要介绍了Java双向链表倒置功能实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09

最新评论