[Typesafe Config] 변수 사용하기

by 스뎅(thDeng) on

Typesafe Config를 사용하는 프로젝트에서 시스템의 environment variable 이나 Java system properties를 사용할 수 있다. 아래처럼 ${VAR} 형식으로 써주면 된다.

http {
  base-url=${BASE_URL}
  port=8080
}

아래와 같이 java 명령의 -D 옵션을 주거나, 시스템 환경변수를 넣어주면 된다.

java -DBASE_URL=myhost.com MyClass

${VAR}와 비슷하게 ${?VAR}를 사용할 수 있다. ${?VAR}는 해당 변수에 설정되어 있는 경우에만 실행이 된다. 아래처럼 설정되어 있을 때 -D 옵션 등으로 HTTP_PORT 변수를 설정해 주지 않으면 http.port는 값이 없게 된다.

http {
  port=${?HTTP_PORT}
}

조심할 점은 아래처럼 ““안에 들어 있으면 치환되지 않으니 조심하자.

http {
  base-url="http://localhost:${HTTP_PORT}/some/path"
}

참고

별도로 명시하지 않을 경우, 이 블로그의 포스트는 다음 라이선스에 따라 사용할 수 있습니다: Creative Commons License CC Attribution-NonCommercial-ShareAlike 4.0 International License