[Maven] 간단 Profile을 이용한 서비스 환경 구성

ITWeb/개발일반 2016. 3. 9. 10:32

개발과 운영 또는 test, qa, stage 등 다양한 개발 및 서비스 환경이 있을 수 있습니다.

그렇다 보니 RDBMS를 사용하는 경우 연결 정보를 다르게 가져가야 하는데요.

이럴경우 maven profile 기능을 이용해서 구성이 가능 합니다.

기억력에 의존할 나이가 넘었으므로 기록해 보겠습니다.

(구글링 해보시면 자세하게 정리된 문서 많이 나와 있습니다.)


참고문서)

http://maven.apache.org/guides/introduction/introduction-to-profiles.html


저는 간단하게 development 환경과 production 환경 두 가지만 설정 하도록 하겠습니다.


pom.xml 설정)

<profiles>
<profile>
<id>development</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<env>development</env>
</properties>
</profile>
<profile>
<id>production</id>
<properties>
<env>production</env>
</properties>
</profile>
</profiles>

<build>
<resources>
<resource>
<directory>src/main/resources/${env}</directory>
</resource>
</resources>
<testResources>
<testResource>
<directory>src/test/resources/${env}</directory>
</testResource>
</testResources>
</build>


빌드 옵션)

$ mvn clean package -P development


디렉토리 구성)

src/main/resources/development

src/main/resources/production


※ src/test 는 여기에 구성하지 않았습니다. ^^;


: