Eclipse에서 Maven 3를 이용한 Site Deploy
Eclipse에서 Maven 3를 이용한 Site Deploy 방법입니다.
1) pom.xml에 plugin 추가
<build>
<plugins>
<plugin>
<groupid>org.apache.maven.plugins</groupid>
<artifactid>maven-site-plugin</artifactid>
<version>3.3</version>
<configuration>
<inputdirectory>D:\workspace\my\target\my-1.0.0-SNAPSHOT</inputdirectory>
</configuration>
<dependencies>
<dependency>
<groupid>org.apache.maven.wagon</groupid>
<artifactid>wagon-ssh</artifactid>
<version>2.4</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
maven-site-plugin을 추가합니다.
(http://maven.apache.org/plugins/maven-site-plugin/deploy-mojo.html)
여기서 inputDirectory를 셋팅하면 해당 디렉토리 이하의 모든 파일, 디렉토리가 그대로 deploy 됩니다.
이어서 Maven에서 FTP 프로토콜을 사용하려면 wagon-ssh가 필요합니다.
(http://maven.apache.org/wagon/)
2) pom.xml에 배포할 사이트 정보 추가
<distributionmanagement>
<site>
<id>my_site</id>
<url>scp://127.0.0.1/home/www</url>
</site>
</distributionmanagement>
plugin에 이어서 배포할 사이트 정보를 추가합니다.
여기서는 사이트 ID와 서버 도메인 또는 IP, 업로드할 디렉토리를 지정합니다.
3) settings.xml 에 서버 접속 정보 추가
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemalocation="http://maven.apache.org/SETTINGS/1.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers>
<server>
<id>my_site</id>
<username>admin</username>
<password>admin</password>
</server>
</servers>
</settings>
settings.xml에 실제 ftp 접속 정보를 추가합니다.
settings.xml은 C:\Users\user\.m2 에 위치합니다.
Maven을 최초 셋팅했을 때에는 settings.xml이 없을 수 있습니다. 이 때에는 새로 하나 생성하시면 됩니다.
여기서 앞서 사이트 정보에서 지정한 ID를 이용하여 ftp 계정의 username과 password를 지정합니다.
4) site:deploy 실행
Eclipse의 maven 실행 창에서
Goals에 site:deploy 입력하고 실행하면
Eclipse에 Console 창에 업로드 진행되는 상황을 확인할 수 있습니다.
Console을 보시면
먼저 inputDirectory의 파일들을 zip파일로 압축한 후
지정한 사이트로 업로드를 진행합니다.
업로드가 끝나면 unzip을 실행해
Eclipse에서 작업하던 디렉토리와 동일한 구조로 업로드 되는 것을 확인하실 수 있습니다.
이후에는 site:deploy만 실행하면
site 전체를 deploy 할 수 있습니다.
조금이나마 도움 되시길~
참조 링크
http://www.grobmeier.de/site-deploy-with-maven-3-15102011.html#.UgCq1JLWMwB