티스토리 뷰


아오,, 어제 쓰던 포스팅이 날아가서 충격에 소주 한잔 마시고... ㅠㅠ
정신 차려서 오늘 다시 작성합니다..
다른 두말 없이 본론으로 들어가 볼게요~(또 날려먹을까봐 겁먹었음..ㅋㅋ)

자, 오늘 포스팅은 다음과 같은 순서로 진행될 예정입니다.

1. Maven 프로젝트 생성

2. Maven 프로젝트 형식을 Dynamic Web Application 형식으로 변경

3. pom.xml 수정



4. Hello Spring 예제 프로그램 작성

이렇게 총 4단계에 걸쳐서 살펴보도록 하겠습니다 ^^
단, 오늘도 사무실에서 작성하고 있기에~ 바쁘면 후닥후닥 넘어갈 수도 있다는 사실! 입니다 ^^ㅎㅎ

1. Maven 프로젝트 생성

이클립스에서 File -> New -> Other... 을 선택한 후 팝업창에서 스크롤 하여 다음과 같이 선택합니다.


여러분의 이클립스에도 저 메이븐 프로젝트 항목이 보이시나요?? ^^
이전 1단계를 자~알 따라서 오셨다면 당연히 저것도 보입니다. 안보이면? 난모름ㅋㅋㅋㅋ
어쨌든 메이븐 프로젝트 선택하고 "Next" 클릭하여 다음 단계로 넘어가주시기 바랍니다.^^
그리고 다음단계는 뭐 별 내용없으니 그냥 "Next"를 또 클릭하여 주세요~

자, 그러면 이후에 볼 수 있는 화면은 메이븐 아키타입(archetype) 설정 화면입니다. 아키타입,, 아키타입,,,
뭐 별건 없구요~ 그냥 쉽게 말해서 메이븐의 많은 템플릿 프로젝트 종류 중에서 선택하신다고 생각하시면 됩니다 ^^


위 그림처럼, Catalog는 Internal으로, Filter은 webapp로 치시면 저처럼 저렇게 보이실겁니다.
그 중에서 "maven-archetype-webapp" 항목을 꼭 선택하세요~ 그리고 또 다음으로~ ^^

이 부분이 이제 살짝 좀 중요한 부분입니다. 프로젝트에 대한 기초적인, 정말 기초적인 설정을 하게됩니다.


Group Id, Artifact Id, Version, Package 이렇게 4부분을 입력 또는 선택하게 되어 있습니다.
이것들은 각각 다음과 같습니다.
Group Id : 프로젝트가 속할 그룹을 지정하게 되는 것입니다. 영어 그대로입니다 ^^
Artifact Id : 프로젝트 산출물의 Id, 다시 말해서 프로젝트 명이 되겠네요~
Version : 메이븐 빌드시 버전 관리를 위하여 사용되는데 초기 값은 위와 같습니다.
Package : 프로젝트의 패키지명을 적어주는 것입니다.
라고 설명했는데요... 사실 저도 저거 별 신경 안씁니다ㅋㅋㅋ 그냥 대충 저렇다는 겁니다. 그래서 저는 평소에
그룹아이디는 대충 도메인을, 버전과 패키지는 저렇게 씁니다. 아, 물론 나중에 배포를 위해서는 저 버전은 바꿔줍니다 ^^
그럼 알맞게 적어주신 후 피니시를 마치시면 프로젝트 탐색기 부분에 이렇게 떡~ 하니 프로젝트가 나옵니다.


참 쉽죠?ㅋㅋ 여기까지 잘 따라오셨나요? ^^

--------------- 절취선 ----------------

ㅋㅋ 혹시나 몰라서 저장 한번 하고 수정으로 추가해야겠습니다... 겁나서..ㅠㅠ
자, 이제 다음 단계입니다~

2. Maven 프로젝트를 Dynamic Web Application 구조로 변경

위에 제가 메이븐 프로젝트를 좍 펼쳐놨는데 보면 참 뭔가 잘 이해하지 못하겠고~
어려운 구조로 되어있어서(나만?) 뭔가 혼란스러우신 분들이 최소 한분은 있다고 생각합니다ㅋㅋㅋ
그러니 처음만나서 잘 몰라뵙겠는 메이븐 프로젝트 구조를 옆집 개처럼 익숙한
다이나믹 웹 어플리케이션 구조로 바꿔보겠습니다~ ^^
참고로, 난 똑똑하니까 메이븐이 정해준 구조에 따라서 잘 할수있다~ 하시는 분들은 그냥 쓰셔도 됩니다.
보다 자세한 설명은 메이븐 홈페이지(http://maven.apache.org)를 참고하시기 바랍니다 ^^

그럼 이제 바꿔볼까요?? ^^ㅋㅋ
먼저 프로젝트에서 "WebContent" 폴더와 "build" 폴더를 생성합니다. 그리고, "build"밑에 "classes" 폴더를 만듭니다. 다음으로, "src - main - webapp" 하위에 존재하는 "WEB-INF" 폴더, "index.jsp" 등등
모든 폴더와 파일을 새로 생성한 "WebContent" 폴더로 복사합니다.
그리고 "src"폴더 하위에 존재하는 모든 폴더들과, "target" 폴더를 과감히 지워주세요~ (레알?ㅋㅋ)
이제 다시 src 폴더에 "test", "res" 폴더를 만들어 주세요! ㅎㅎ
다시 한번 짚어보면 순서는 다음과 같습니다.
1) 프로젝트 밑에 "WebContent", "build" 폴더 생성, "build"내에 "classes"폴더 생성
2) "src-main-webapp"폴더 내의 모든 내용을 "WebContent"폴더로 복사
3) "target"폴더 삭제, "src" 폴더 안에 있는 내용 모두 삭제
4) "src" 밑에 "test", "res" 생성 후 작업

그리고 나면 다음 그림과 같은 구조가 될테고, 프로젝트에 저렇게 빨간(!) 느낌표가 보일겁니다.


저렇게 보이십니까? ^^ 웬지 매일 보는듯한 제시카양의 얼굴처럼 익숙한 프로젝트의 모습이 보이시죠??ㅋㅋㅋ
그럼 이제 저 빨간색 느낌표가 문제입니다! 저걸 없애줘야되는데... 요건 좀 복잡할지도 모르겠네요~ ㅋㅋㅋ
어쩜 저와 약간의 설정이 달라서 잘 안되실수도 있을거같아요 ㅠㅠㅠㅠ
그래도 여기부분은 최대한 많은 캡쳐와 설명으로 확실히 족집게 강의를 해 드리겠습니다 ^^
프로젝트 탐색기에서 프로젝트 선택 후 마우스 우클릭 - "Properties" 선택(단축키 Alt+Enter)하시면
다음과 같은 화면이 나옵니다.


왼쪽 메뉴에서 먼저 Java Compiler을 선택합니다. 그리고 자바 버전을 다음처럼 "1.6"으로 선택해 주세요!


다음으로는 "Java Build Path" 로 이동하신 후 "Source" 탭을 선택합니다.
보시면 "src/main/resources"가 등록되어 있는데 선택하시고 과감히 "Remove" 해버리세요~~ ㅋㅋ
그리고 "Add Folder"를 클릭하시고 조그만한 팝업창에서 "src" 폴더 체크해서 선택해주시면 됩니다.^^


아~ 그리고 화면 아랫부분에 있는 "Default output folder:" 부분도 위의 그림에 나오는 것처럼
이전에 생성한 "classes"폴더 경로로 지정하여 주시면 됩니다.
다들 위 그림처럼 보이시나요?? ^^ 그럼 됐습니다ㅋㅋㅋ OK 눌러주세요~ ㅎㅎ
이제 다시 프로젝트 탐색기를 보시면 완전 어디서 많이 보던 구조가 되었죠???ㅋㅋ
"WEB-INF"폴더 밑에 "lib" 폴더도 보이고, 할텐데요ㅋㅋㅋ
하지만 아직도 조금 설정할 부분이 남았답니다~ㅋㅋㅋ (님, 레알 남았음?)

이제 maven 프로젝트 설정파일인 pom.xml 파일을 방금 변경한 구조에 맞게 적당히 바꿔줘야 합니다.
프로젝트 탐색기에서 pom.xml 파일 더블클릭 후, 하단의 조그만 "pom.xml" 탭을 선택하면 소스가 보입니다~


대략 위와 같은 과정을 거치면 됩니다~ 화면을 군데군데 짜깁기했지만,,, 다들 알아보시겠죠???ㅋㅋㅋ
자, 저기 보시면 "<build></build>" 부분이 보이시죠??
저기에 우리가 설정한 프로젝트 구조에 따라 상세하게 설정만 잘 해주게 되면 우리의 일꾼,
메이븐이 알아서~ 저절로~~ 척척!! 프로젝트 구조를 생성하여 주게 됩니다. ^^
설명은 뭐 특별히 안해도 코드 보시고 하면 대충 이해하시리라 생각합니다.
이해못해~ 이해못해~ 하시는 분들은.......
다시 메이븐 홈페이지(http://maven.apache.org)를 참고하시기 바랍니다ㅋㅋㅋㅋㅋ
여기있는 xml 소스를 잘 복사해주세요~ 
<build>
        <finalName>athena</finalName>
<directory>${basedir}/build</directory>
<sourceDirectory>${basedir}/src/</sourceDirectory>
<outputDirectory>${basedir}/build/classes</outputDirectory>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<warSourceDirectory>${basedir}/WebContent</warSourceDirectory>
</configuration>
</plugin>
</plugins>
</build>

<reporting>
<outputDirectory>${basedir}/build/site</outputDirectory>
</reporting>





그리고 복사하셔셔~ pom.xml 파일에 있는 "<build></build>"를 덮어써주세요~ 
참고로 이건 제가 즐겨 사용하는 설정입니다.. 단위테스트 폴더와 빌드 경로등등이 지정되어있습니다.
자세한 사항은 메이븐 홈페이지 가보세요~ (이젠 링크 복사도 귀찮다는... ㅎㅎ)

자, 이제 다 왔습니다~ ㅋㅋ 저장을 가볍게 해주시고~ 프로젝트 탐색기에서 프로젝트를 선택해주세요~
그리고 마우스 우클릭 - "Maven" - "Update Project Configuration"을 선택하세요~ㅎㅎ
이건 윈도우에서 기본으로 캡쳐를 못해서 못했어요 ㅠㅠ
하지만 메뉴 선택하는거니까 쉽게 하실 수 있으리라고 믿습니다ㅠㅠ
어쨋든 하고 나면 막 콘솔창에 메이븐이 없는 폴더를 만들었다는 둥 뭐라는둥 주절주절 하고~~ 설정이 끝나게 됩니다~
뭐 별거아닌거 같은데 하다보니 길어졌네요~~
그래서 스프링은 패스!! ^^

다들 열심히 공부합시다 ^^ㅎㅎ


























댓글