[英]Spring boot - Default properties file not being read when using profile
我有一個帶有 2 個屬性文件的 Spring Boot 2 應用程序:
當我使用 dev 配置文件在 IntellijIdea 中運行應用程序時,Spring 會讀取配置文件特定文件和默認文件。
一旦我構建了一個可執行的 jar 文件,我就在 jar 之外創建了一個新的 application-prod.properties,具有生產環境屬性,並使用--spring.profiles.active=prod
執行應用程序,期望它讀取這個文件和默認application.properties
,但它只是讀取 jar (application-prod.properties) 外的文件。
Spring Boot 應該讀取這兩個文件,還是我期待它默認不做的事情?
如果應該,我會缺少什么?
正如邁克爾所說,Spring boot 支持屬性層次結構。
我試過了,它按預期工作,你可以在這里找到一個參考項目
我能想到的幾點:
提取 jar 文件的內容並確認名為 application.properties 的文件捆綁在其中。
您可能會覆蓋 spring.config.location 屬性並使用文件名而不是目錄
如果您在 spring.config.location 中指定了任何文件,則不會考慮這些文件的特定於配置文件的變體。 如果您還想使用特定於配置文件的屬性,請使用 spring.config.location 中的目錄。
默認情況下,application.properties 將用於運行 Spring Boot 應用程序。 在運行 JAR 文件時,您需要指定 spring 活動配置文件。 只會讀取一個文件
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.