개발

Maven Profile를 통한 Web 리소스 분기처리

동고킴 2016. 3. 12. 15:51
반응형

html, js, 이미지 파일 등의 리소스를 분기처리 할때 활용

아래 예는 로컬, 개발환경에 따라서 index 페이지를 다르게 패키징하는 예이다.


1) 각 프로파일 설정에 분기처리할 파일의 경로를 설정한다.


2) maven-was-plugin 설정에서 대상 directory, 배포 target, 대상 파일을 설정한다.

아래 예에서는 index.html 파일 하나만 처리할꺼라서 include를 사용하였지만, 여러 파일을 통 처리할때에는 exclude를 사용하는게 더 편하다.


3) 프로파일 옵션을 사용하여 패키징한다.

사용방법은 mvn -P[pofile id] [goal]

예) mvn -Plocal package

     mvn -Pdev package


pom.xml 예)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<profiles>
    <!-- local -->
    <profile>
        <id>local</id>
        <activation>
                <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <index.html.path>/local/index</index.html.path>
        </properties>
    </profile>
 
    <!-- dev -->
    <profile>
        <id>dev</id>
        <properties>
            <index.html.path>/dev/index</index.html.path>
        </properties>
    </profile>
</profiles>
 
 
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.2</version>
    <configuration>
        <webResources>
            <resource>
                <directory>src/main/$</directory>
                <targetPath>docs</targetPath>
                <includes>
                    <include>index.html</include>
                </includes>
            </resource>
        </webResources>
    </configuration>
</plugin>



반응형