默认情况下,SpringApplication
会将任何命令行选项参数(即以--
开头的参数,如--server.port=9000
)转换为一个属性,并将其添加到Spring Environment
中。命令行属性总是优先于基于文件的属性源。
这意味着如果你在命令行上提供了某个属性的值,那么这个值将覆盖从任何其它源(如配置文件)中获取的相同属性的值。这是Spring Boot的一种机制,用于允许用户在运行时灵活地覆盖应用程序的默认配置。
如果你不希望将命令行属性添加到 Environment
中,你可以通过使用SpringApplication.setAddCommandLineProperties(false)
来禁用它们。