maven jetty plugin - 메이븐에서 제티를 구동해서 web app deploy 및 테스트
개요
제티 는 tomcat 처럼 WebServer 및 Servlet/JSP Container 기능을 제공하며 그외에 SPDY, JMX, JNDI, JAAS 가 통합되어 있는 application server 이다.
google app engine 의 JSP/Servlet container로도 채택되어 있으며 그외 sonatype nexus나 atlassian 의 fisheye 외 많은 상용/오픈소스에도 사용되고 있는 검증된 제품이다.
작고 가볍고 빠르기 때문에 Java web app 배포용으로 적당하다. maven jetty plugin 을 사용하면 개발된 java app 을 바로 deploy 해서 테스트해 볼 수 있다.
설정
Jetty7부터는 plugin 명이 maven-jetty-plugin 에서 jetty-maven-plugin 로 변경되었다.
Jetty6 설정
<build> <plugins> <plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>maven-jetty-plugin</artifactId> <version>6.1.26</version> </plugin> </plugins> </build>
Jetty 7, 8 설정
<build> <plugins> <plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version>8.1.12.v20130726</version> </plugin> </plugins> </build>
Goals
전체 goals 을 보려면 다음 help goal 사용 (Jetty7 부터 jetty:help goal 이 가능함)
- mvn jetty:help
-Ddetail -Dgoalname 을 입력하면 goal 별 자세한 parameter 와 정보를 볼 수 있음
mvn jetty:help -Ddetail=true -Dgoal=start
jetty:start 로 Jetty 를 시작하고 jetty:stop goal 로 중지
Tips
Running Resource filters when using jetty:run goal
jetty:exploded goal is used to assemble your webapp into an exploded war and automatically deploy it to Jetty.
JNDI data source registration
Ref
- http://docs.codehaus.org/display/JETTY/Jetty+Documentation - Jetty6
- http://wiki.eclipse.org/Jetty - Jetty 7,8
- http://www.eclipse.org/jetty/ - Project Home