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 최신 버전 |
Activation | 1.0.2 | geronimo-activation_1.0.2_spec | 1.2 |
Activation | 1.1 | geronimo-activation_1.1_spec | 1.0.2 |
EJB | 2.1 | geronimo-ejb_2.1_spec | 1.1 |
EJB | 3.0 | geronimo-ejb_3.0_spec | 1.0 .1 |
J2EE Connector | 1.5 | geronimo-j2ee-connector_1.5_spec | 2.0.0 |
J2EE JACC | 1.0 | geronimo-j2ee-jacc_1.0_spec | 1.1.1 |
JACC | 1.1 | geronimo-jacc_1.1_spec | 1.0.1 |
JavaMail | 1.3.1 | geronimo-javamail_1.3.1_spec | 1.3 |
JavaMail | 1.4 | geronimo-javamail_1.4_spec | 1.5 |
JMS | 1.1 | geronimo-jms_1.1_spec | 1.1.1 |
JPA | 3.0 | geronimo-jpa_3.0_spec | 1.1.1 |
JSP | 2.0 | geronimo-jsp_2.0_spec | 1.1 |
JSP | 2.1 | geronimo-jsp_2.1_spec | 1.0.1 |
JTA | 1.0.1B | geronimo-jta_1.0.1B_spec | 1.1.1 |
JTA | 1.1 | geronimo-jta_1.1_spec | 1.1.1 |
Servlet | 2.4 | geronimo-servlet_2.4_spec | 1.1.1 |
Servlet | 2.5 | geronimo-servlet_2.5_spec | 1.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>
<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