Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我们可以使用带破折号“-”或下划线“\”的spring启动外部配置文件名吗?_Java_Spring_Spring Boot - Fatal编程技术网

Java 我们可以使用带破折号“-”或下划线“\”的spring启动外部配置文件名吗?

Java 我们可以使用带破折号“-”或下划线“\”的spring启动外部配置文件名吗?,java,spring,spring-boot,Java,Spring,Spring Boot,我正在尝试使用外部配置在窗口中运行springboot-2.xfatjar 我有三个不同的外部配置文件,如: C:\application-myconfig.yml C:\application_myconfig.yml C:\applicationmyconfig.yml 配置为: server: servlet: contextPath: /application1 mymessage: this is test message 在我的窗口中,我运行以下命令来运行sprin

我正在尝试使用外部配置在窗口中运行
springboot-2.x
fatjar

我有三个不同的外部配置文件,如:

C:\application-myconfig.yml
C:\application_myconfig.yml
C:\applicationmyconfig.yml
配置为:

server:
  servlet:
    contextPath: /application1

mymessage: this is test message
在我的窗口中,我运行以下命令来运行
springboot
fatjar

备选方案1

java -jar -Dspring.config.location=file:\\\C:/application-myconfig.yml aplication1.jar
备选方案2

java -jar -Dspring.config.location=file:\\\C:/application_myconfig.yml aplication1.jar
备选方案3

java -jar -Dspring.config.location=file:\\\C:/applicationmyconfig.yml aplication1.jar
奇怪的是
选项1
选项2
都不起作用。无法找到/加载配置文件

只有
选项3
适合我


我的问题是我们可以使用
spring boot
配置文件名加破折号
-
或下划线

当谈到命名约定时,您可以使用连字符(-)在spring boot应用程序的yml和属性文件的情况下,您可以参考下面的spring文档。请参阅本节

24.7.4 YAML缺陷

关于yml文件中名称的命名约定,请参阅下表

表24.1。松装

链接:

另请参阅下文,spring引用


如果使用环境变量而不是系统属性,大多数操作系统都不允许使用以句点分隔的键名,但可以使用下划线(例如,SPRING\u CONFIG\u NAME而不是SPRING.CONFIG.NAME)

可以将配置文件与“-”(破折号)和“-”(下划线)一起使用。只要文件名正确,就可以使用它。