Skip to content

Maven + Spring framework (Eclipse + eGov) #
Find similar titles

Structured data

Category
Programming

메이븐(Maven)은 개발자로 하여금 자바용 프로젝트 관리를 쉽게 도와주는 빌드 툴로 여기선 이클립스(Eclipse) IDE(Integrated Development Environment)에서 메이븐을 이용한 스프링 기반의 프로젝트 생성방법을 예제로 확인하고자 한다.

이클립스는 이클립스 재단(http://www.eclipse.org/)에서 제공하는 오픈소스 통합 개발환경으로 자바 프로그램에 최적화되어 있다. 여기서는 이클립스를 국내 공공부분 프로젝트에 최적화 해놓은 전자정부프레임워크(eGov)용 이클립스 개발환경에서 웹기반 프로젝트를 생성하도록 한다.

전자정부프레임워크(eGov)는 한국정보화진흥원(https://www.nia.or.kr/)에서 만든 웹 기반 어플리케이션 프레임워크로 정부, 공기업, 공공기관 등의 웹사이트에 자주 사용되는 공통 기능들을 Java의 스프링(Spring) 프레임워크 기반으로 미리 만들어 놓은 표준프레임워크이다. 스프링 프레임워크를 그냥 사용하면 편할텐데 구태여 비슷한 걸 왜 또 만들었을까 의문을 가질 수 있을텐데, 확장성이 좋은 스프링 프레임워크를 사용하면 사용자마다 검증되지 않은 플러그인 들을 적용하다 보면 예상치 못한 오류가 발생할 수 있기 때문에 검증된 코드로 구성되어 신뢰성이 있는 전자정부프레임워크를 사용하는 것이 스프링에 익숙하지 않은 사용자에게는 큰 도움이 될 것이다.

메이븐 프로젝트 생성 #

전자정부프레임워크는 이클립스(Eclipse) IDE에서 플러그인 방식으로 설치가 가능하고 전자정부프레임워크 개발환경에 최적화된 이클립스는 표준프레임워크 포털(http://www.egovframe.go.kr) 에서 내려받을 수도 있다. 2018년 기준 배포되는 전자정부프레임워크 최신 버전은 3.7 버전으로 스프링 프레임워크는 4.2.4을 기본으로 사용하고 있다. 개발환경이 되는 이클립스는 4.6(Neon) 버전을 사용하고 있다.

전자정부프레임워크 기반 프로젝트 개발환경 구성은 다음과 같다.

  • JDK 1.8+ BR
  • Eclipse 4.6 (Neon)
  • eGove 3.7
  • spring framework 4.2.4 RELEASE
  • MAVEN 4.0
  • Tomcat 8.+

여기서는 이클립스(Eclipse)에서 전자정부프레임워크(eGov) 기반 메이븐 웹 프로젝트를 생성하고 메이븐 설정과 테스트 방법을 알아보고, 아파치 그룹에서 제공하는 Tomcat 웹 어플리케이션 서버를 이클립스에서 실행하고 메이븐 프로젝트가 어떻게 서비스 되는지를 예제를 통해 알아보도록 하겠다.

1. 전자정부프레임워크 프로젝트 생성 #

이클립스를 실행한 후 "Package Explorer" 뷰에서 마우스 오른쪽 버튼을 클릭해 팝업메뉴에서 "New"를 선택하고 "Project.."를 클릭하면 다음과 같이 프로젝트 생성 팝업창이 활성화된다. 여기서는 전자정부프레임워크의 웹 프로젝트를 생성할 것이기 때문에 "eGovFrame > eGovFrame Web Project"를 선택한 후 "Next" 버튼을 클릭해 다음 단계로 이동한다.

프로젝트 생성 팝업창-1

선택한 전자정부프레임워크 웹 프로젝트 생성화면으로 이동하면 "Project name"에 프로젝트 이름을 입력한다. 톰캣 8에서 지원하는 서블릿 모듈은 3.1까지 가능하기 때문에 "Dynamic Web Module version"을 3.1로 변경한다 전자정부프레임워크는 기본적으로 메이븐을 통한 프로젝트 관리가 이루어지기 때문에 하단의 "Maven Setting" 영역에 메이븐 필수 설정 정보를 입력하도록 한다.

참고사항으로 "Group Id" 는 프로젝트를 다른 프로젝트와 구분하기 위한 이름으로 자바의 패키지 명명 규칙을 따른다. 일반적으로 도메인 주소를 거꾸로 입력하고는 한다. 예를 들어 도메인 주소가 "insilicogen.com" 라고 하면 그룹 ID를 "com.insilicogen"를 사용한다. "Artifact Id"는 현재 프로젝트를 빌드(build)했을 때 버전을 제외한 배포 파일의 이름으로 이름은 아무거나 입력이 가능하고, 소문자만 사용하고 특수문자는 사용하지 않는 것을 권장하고 있다. 모든 내용을 입력한 후에 "Finish" 버튼을 클릭하면 웹 프로젝트 생성이 완료된다.

프로젝트 생성 팝업창-2

다음은 이클립스에서 메이븐 기반의 웹 프로젝트가 생성되었을 때의 초기 화면이다.

프로젝트 생성 완료

프로젝트 생성이 완료된 후 "Problems" 뷰를 보면 web.xml 파일이 없어서 프로젝트 오류가 발생하는데 이는 예제 코드를 포함하지 않았기 때문에 "src > main > webapps > WEB-INF" 폴더에 web.xml 파일이 생성되지 않았기 때문에 발생한 것으로 WEB-INF 폴더에 web.xml 파일을 생성하고 다음과 같이 내용을 입력하면 프로젝트 오류는 더 이상 발생하지 않게 된다.

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.1" xmlns="http://java.sun.com/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
         http://java.sun.com/xml/ns/javaee/web-app_3_1.xsd">
    <display-name>Maven Example Application</display-name>         
</web-app>

Suggested Pages #

0.0.1_20140628_0