• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

application 파일 우선순위에 따른 로딩여부 질문드립니다.

20.07.25 15:51 작성 조회수 284

0

jar 파일 내부에 application.yaml 파일을 설정해두었습니다.

그리고 3개의 profiles  (local, dev, prd) 을 추가해 두었습니다.

이후에  jar 파일 밖에서 application.yml 파일을 지정하고  profiles 로 outside 를 주었습니다.

jar 실행시 active.profiles=outside,local 로 주었는데 local 부분을 읽지 못했습니다. 

테스트 결과 jar 파일 안에 있는 application.yml 파일은 아예 읽지 못하는것 같았고,

저는 jar 밖에 있는 application.yaml 에서는 최소값만 override 하고, 나머지는 jar안에 있는 application.yml에서 설정된 값으로 쓰고 싶었습니다.

즉  jar 밖에 있는 application.yml 파일을 사용한다고 지정하게되면, jar 안에 있는 우선순위가 낮은 application.yml 파일은 아예 읽어 오지 않는건가요?

답변 1

답변을 작성해보세요.

1

아니요. JAR 안에 있는 application.yml 파일도 사용해서 원하시는대로 jar 밖에 있는 application.yml로 일부 값만 오버라이딩 하는게 가능합니다. "읽지 못하는것 같았고"라고 하셨는데 좀 더 확인해 보시면 어떨까요.

https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-external-config-application-property-files

The list is ordered by precedence (properties defined in locations higher in the list override those defined in lower locations).