我正在尝试使用外部配置在窗口中运行 springboot-2.x
fat jar。
我有三个不同的外部配置文件,例如:
C:\application-myconfig.yml
C:\application_myconfig.yml
C:\applicationmyconfig.yml
配置是:
server:
servlet:
contextPath: /application1
mymessage: this is test message
在我的窗口中,我运行以下命令来运行 spring-boot
fat jar。
选项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
奇怪的是Option-1
和Option-2
不起作用。无法找到/加载配置文件。
只有Option-3
对我有用。
我的问题是我们可以使用带有破折号-
或下划线_
的spring-boot
配置文件名吗?
最佳答案
在命名约定方面,您可以在 Spring Boot 应用程序的 yml 和属性文件中使用连字符(-),您可以引用下面的 Spring 文档。请参阅
部分24.7.4 YAML Shortcomings
关于yml文件中名称的命名规范,参见表格
Table 24.1. relaxed binding
链接:https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html
另请参阅下面,spring 说要引用
如果您使用环境变量而不是系统属性,则大多数操作系统不允许使用句点分隔的键名称,但您可以使用下划线代替(例如,SPRING_CONFIG_NAME 代替 spring.config.name)
关于java - 我们可以使用带有破折号 `-` 或下划线 `_` 的 spring-boot 外部配置文件名吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56353554/