programing

Yml 구성 파일 "Inheritance"(Spring 부트 포함)

linuxpc 2023. 6. 25. 18:31
반응형

Yml 구성 파일 "Inheritance"(Spring 부트 포함)

저는 온라인에서 정확한 답을 찾을 수 없었습니다.

Spring Boot의 yml 파일은 서로 "상속"합니까?내 말은, 내가 가지고 있다면,application.yml가 있는

server:
  port: 80
  host: foo

그리고.application-profile1.yml뿐인

server:
  port: 90

그래서 만약 내가 봄 부츠를 시작한다면,profile1활동적인 프로필로서, 나도 또한 가질 것인가요?server.host에 설정된 재산.foo?

네.application.yml파일이 모든 파일보다 우선 순위가 높습니다.application-{profile}.yml파일. 프로파일별 yml 파일의 속성이 기본값의 값을 재정의합니다.application.yml프로필 특정 yml 파일에 없는 파일 및 속성은 기본 파일에서 로드됩니다.에 적용됩니다..properties파일 및 파일bootstrap.yml또는bootstrap.properties.

Spring Boot 설명서에서는 72.7 환경 단락에 따라 구성 변경에 대해 설명합니다.

이 예에서 기본 포트는 9000이지만 Spring 프로파일 'development'가 활성화되면 포트는 9001이고 'production'이 활성화되면 0입니다.

YAML 문서는 발견된 순서대로 병합됩니다(따라서 나중 값은 이전 값보다 우선함).

사용할 수 있는 속성 파일에서 동일한 작업을 수행하려면application-${profile}.properties프로파일별 값을 지정합니다.

여기 제 해결책이 있습니다.

추정하다application.yml:

spring:
  profiles: default-server-config

server:
  port: 9801
  servlet:
    context-path: '/ctp'

사용할 경우default-server-config프로필, 포트 사용8080내 안에서application-dev.yml

application-dev.yml:

spring:
  profiles:
    include:
      - default-server-config
      - dev-config

---
spring:
  profiles: dev-config
  
server:
  port: 8080

그리고나서-Dspring.profiles.active=dev

언급URL : https://stackoverflow.com/questions/48330310/yml-config-files-inheritance-with-spring-boot

반응형