maven-war-plugin webXml, 개발 환경별 web.xml 관리

개발 모드(local, develop, production)별 web.xml을 별도로 관리할 필요가 있다.  아래와 같이 로컬에서 사용할 web.xml 과 개발(dev)에서 사용할 web.xml을 각각 생성한다.

maven01

pom.xml은 다음과 같이 생성한다(일부 생략). 아래와 같이 pom.xml에서 설정하고 mvn package를 실행하면 local properties 폴더에 있는 web.xml파일이 build 디렉토리로 복사된다.

<project xmlns="...">
  <properties>
    <SERVER_MODE>local</SERVER_MODE>
  </properties>

  <build>

  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-war-plugin</artifactId>
      <version>2.5</version>
      <configuration>
        <webXml>${basedir}/src/main/resources/properties/${SERVER_MODE}/web.xml</webXml>
      </configuration>
    </plugin>
  </plugins>

  </build>
</project>

개발서버(jenkins)상에서 dev폴더에 있는 web.xml을 적용하고자 하면 아래와 같이 실행옵션으로 -DSERVER_MODE=dev를 추가하면 된다.
maven03

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다