Maven

웹 어플리케이션 개발시 주로 사용되는 의존 프로젝트 목록

우혁이 아빠 2013. 7. 1. 09:09

웹 어플리케이션 개발시 주로 사용되는 의존 프로젝트 목록

웹 기반의 엔터프라이즈 어플리케이션을 개발할 때에는 서블릿 API, JSP API, JTA API 등 Sun에서 정의한 API가 필요하다. 문제는 라이센스 때문에 Sun이 제공하는 API를 Maven 중앙 리포지토리에서 다운로드 받을 수 없다는 점이다. 중앙 리포지토리에 없는 라이브러리는 직접 다운로드 받아 로컬 리포지토리에 등록해주어야 하는데, 다행히 Geronimo 프로젝트에서 Sun의 주요 API를 만들어 Maven 리포지토리에 등록하고 있다. 따라서, 서블릿 API나 JSP API 가 필요한 경우 Geronimo에서 제공하는 프로젝트를 pom.xml 파일의 <dependency>에 추가해주면 된다.

아래 표는 Geronimo가 제공하는 Sun의 주요 표준 API 목록을 정리한 것이다. 참고로 아래 표에 정리된 Artifact 들의 groupId는 org.apache.geronimo.specs 이다.

표준표준 버전Artifact ID Artifact 최신 버전
Activation1.0.2 geronimo-activation_1.0.2_spec1.2 
Activation1.1geronimo-activation_1.1_spec1.0.2
EJB2.1geronimo-ejb_2.1_spec1.1 
EJB3.0geronimo-ejb_3.0_spec1.0 .1
J2EE Connector1.5geronimo-j2ee-connector_1.5_spec 2.0.0
J2EE JACC1.0 geronimo-j2ee-jacc_1.0_spec 1.1.1 
JACC1.1 geronimo-jacc_1.1_spec 1.0.1
JavaMail 1.3.1 geronimo-javamail_1.3.1_spec 1.3 
JavaMail1.4 geronimo-javamail_1.4_spec1.5
JMS1.1geronimo-jms_1.1_spec 1.1.1
JPA3.0 geronimo-jpa_3.0_spec 1.1.1
JSP2.0 geronimo-jsp_2.0_spec1.1
JSP2.1 geronimo-jsp_2.1_spec1.0.1
JTA1.0.1Bgeronimo-jta_1.0.1B_spec 1.1.1 
JTA1.1 geronimo-jta_1.1_spec1.1.1
Servlet2.4 geronimo-servlet_2.4_spec1.1.1 
Servlet2.5 geronimo-servlet_2.5_spec1.2


예를 들어, 개발 과정에서 서블릿 2.5 API가 필요할 경우 pom.xml에 다음과 같이 <dependency>를 추가해주면 된다.

<dependency>
    <groupId>org.apache.geronimo.specs</groupId>
    <artifactId>geronimo-servlet_2.5_spec</artifactId>
    <version>1.2</version>
    <scope>provided</scope>
</dependency>


위 코드에서 scope가 provided인 이유는 서블릿이나 JSP API의 경우 컨테이너에 제공하기 때문이다.



출처 - http://javacan.tistory.com/entry/WebAppDevelopmentUsingMaven