다른 환경 (예 : UAT, 공연, 프로덕션 등)에 맞게 제작해야하는 Android 앱이 있습니다. 각 환경마다 다른 속성 (예 : URL, 패키지 등)이 필요합니다.개미의 속성 파일에있는 변수
모든 다른 매개 변수를 단일 속성 파일에 넣고 각 매개 변수 앞에 일치하는 환경을 추가하고 싶습니다.
예를 들어 속성 파일에는 개발 환경의 경우 dev.home-url = http://home_dev.com
, 프로덕션 환경의 경우 prod.home-url = http://home.com
이 포함됩니다.
내가 params
의 접두사로 파일 속성을 가리키는 속성을 만들기 위해 아래 사용
<property file="parameters.properties" prefix="params" />
그리고 속성을 사용하는, 내가 사용
이${params.home-url}
문제가 온다 환경의 접두어를 매개 변수에 추가해야 할 때. 그것은 분명히 할 수없는이,처럼 보이는 끝낼 것 :
${params.${env-prefix}.home-url}
외부 호텔 판독 에코 단지 파일 파일의 해당 등록 정보 값 대신 $ {params. $ {env-prefix} .home-url}을 인쇄합니다. – Stimsoni
외부 속성 파일에서도 시도해 보았습니다. 내가 한 일을 반영하도록 내 대답을 업데이트했습니다. 프로퍼티가 프로퍼티 파일에 존재하지 않으면'$ {params.dev.home-url}'을 얻을 것이다. 어떤 버전의 Ant를 사용하고 있습니까 (' $ {ant.version} ')? 나는 1.8.2를 사용하고있다. –
creemama
아, 나는'env-prefix'가 정의되어 있지 않으면보고있는 동작을 얻습니다. 명령 행에서 Ant 빌드 파일을 실행하려고한다면,'ant -Denv-prefix = dev'를 실행하십시오. – creemama