我有一个Spring Boot 1.4应用程序,它有一个基于YAML的配置文件。配置文件指定默认配置文件:prod
spring:
profiles.active: prod
当我使用Maven生成战争并部署到Tomcat 7时,未设置默认配置文件。 Tomcat日志:
No active profile set, falling back to default profiles: default
为了在Tomcat中部署的应用程序中设置默认配置文件,我可以将System属性传递给Tomcat,如下所示:
-Dspring.profiles.active=prod
这样可行,但我想使用Spring Boot属性,而不是系统属性来设置默认配置文件。 在Tomcat中部署应用程序时,是否有理由忽略默认的yaml属性文件?
答案 0 :(得分:0)
只需将您的个人资料重命名为默认值并为开发添加其他名称,如下所示:
spring:
profiles: development
devtools:
restart:
enabled: false
thymeleaf:
mode: HTML
cache: false
http:
multipart:
max-file-size: 3Mb
max-request-size: 4Mb
logging:
level:
org.apache: WARN
org.apache.catalina.webresources.Cache: ERROR
org.hibernate: WARN
org.hibernate.SQL: WARN
org.hibernate.type: WARN
org.hibernate.jpa.internal: ERROR
org.springframework: WARN
org.springframework.data.jpa: WARN
org.springframework.validation: WARN
org.springframework.web: WARN
org.springframework.web.socket: WARN
org.zkoss: WARN
com.ultraip: TRACE
---
spring:
profiles: default
thymeleaf:
mode: HTML
http:
multipart:
max-file-size: 3Mb
max-request-size: 4Mb
messages:
cache-seconds: -1
resources:
cache-period: 259200
server:
port: 80
session:
timeout: 86400
compression:
enabled: true
mime-types: "text/html,text/xml,text/css,text/plain,application/json,application/xml,application/javascript"
security:
headers:
cache: false
logging:
file: "/var/log/intranet.log"
level:
org.apache: WARN
org.apache.catalina.webresources.Cache: ERROR
org.hibernate: WARN
org.hibernate.jpa.internal: ERROR
org.springframework: WARN
org.zkoss: WARN
com.ultraip: INFO
" ---"表示不同配置文件的开始