2016-12-07 1 views
8

사용자 홈 폴더에서 Environment specific properties을 설정해야하는 스프링 부트 응용 프로그램에서 작업 중입니다.springboot에서 사용자 환경의 환경 특정 속성

Google은 동일한 &에 대해 Google을 검색하여 리소스 아래에 다른 속성 파일 (dev, test, production)을 넣은 다음 사용하려는 환경이 spring.profiles.active=dev OR prod 인 봄 부팅을 알려야합니다.

그러나 내 요구 사항은 매우 다릅니다. 내 시스템에있는 사용자 홈에 파일을 넣을 것입니다. & 해당 파일의 속성 양식을 읽으려고합니다. 내가 어떻게 그 일을 할 수 있고,지도가 필요할 수 있습니다.

돕는 손을 높이 평가할 것입니다.

답변

0

음, 환경 변수가 필요하지 않은 것 같습니다. 프로덕션 서버의 경우 등록 정보 파일이 그대로 유지되며 스테이징 시스템에서도 동일한 위치에 있습니다. 이제까지 어디서 배포 할 것인가? 당신은 환경을 설정할 필요가 없습니다, 당신은 단지 에 속성 파일을 가리켜 야합니다. 이제이 경로를 정의하는 방법은 두 가지가 있습니다. - 코드에 정적 경로를 넣을 수 있습니다. - Property_Path와 같은 환경 변수를 설정할 수 있습니다. 봄 부팅 응용 프로그램에서 그것을 읽으십시오.

그러나 한 걸음 앞으로 나아가고 싶다면 응용 프로그램 + 프로필 이름을 전달하여 봄 구름 구성 관리자를 사용할 수 있습니다. CM은 git 또는 파일에서 직접 속성 파일을 가져올 수 있습니다 당신을 위해 시스템 ... Spring Boot docs에서

2

:

spring.config.location 환경 등록 정보 (쉼표로 구분 된 디렉토리 위치 목록 또는 파일 경로)를 사용하여 명시 적 위치를 참조 할 수도 있습니다.

docs가 상태가되기 때문에 명령 줄이나 환경 변수로 지정해야합니다.

$ java -jar myproject.jar --spring.config.location=classpath:/default.properties,classpath:/override.properties 
관련 문제