공부한것들을 정리하는 블로그 입니다.
0. 스프링(Spring) 개발 -개발환경 구성하기 [Eclipse+Maven+SVN] 본문
0. 스프링(Spring) 개발 -개발환경 구성하기 [Eclipse+Maven+SVN]
호 두 2017. 6. 9. 14:49따로 eclipse의 초기 설정은 다루지 않을 예정이였으나
맨 처음 Spring framework(이하 스프링)을 접한 후, 이런저런 프로젝트를 진행하였습니다. 그런데 처음에는 다양한 개발환경을 가진 사람들이 시작하다보니, 여러가지 문제가 있었습니다. 혼자 개발을 한다면 상관없지만, 프로젝트의 특성상 여러사람들이 같이 개발을 하는데, 개발환경을 쉽고 편하게 설치할 수 있으면 좋겠다는 생각을 했습니다.
그에따라, 개발환경을 구성하여 배포하려고 하는데, 개발환경을 구성하는데 많은 어려움을 겪었던 기억이 있습니다. 인터넷을 찾아보면 굉장히 많은 개발환경 설치글들이 있지만, 제 입맛에 딱 맞추기는 힘들었죠.
이 세상에는 뛰어난 개발자들이 많지만, 굳이 제가 이 글을 쓰는 이유는 다른 많은 사람들이 이 글을 보고 개발환경을 설정하는데 제가 한것같은 삽질을 하지 않기를 바라며, 이러한 설정을 다른 사람들에게 설명할때도, "내가 쓴 글 봐~" 라고 이야기하기 위해서입니다. (물론 저도 다시 보겠죠 -_-ㅋ)
그럼 시작~!
0. 개발환경 구성
C 드라이브 밑에 dev라는 폴더를 만들고, 필요한 환경을 넣어두고 dev 폴더만 압축하여 배포하려고 한다. 모든 사람들이 한번 설정해둔 동일한 개발환경을 이용함으로써 쉽고 편하게 개발환경을 공유하고, 서로 다른 환경에서 발생할 수 있는 문제점을 미연에 방지하려고 한다. 본인은 C 드라이브는 SSD를 사용하는 관계로, 조금이라도 빠르게 사용하기 위해서 C 드라이브에 개발환경을 구축하려 한다.
1. 개발환경 버전
IED : Eclipse 4.3 Kepler
JDK : JAVA SE 7u60
Tomcat : Tomcat 7.0
Maven : Maven 3.2.2
개발에 사용할 기본적인 프로그램의 버전은 이와 같다. 보통 개인적으로는 최신버전의 프로그램을 사용하지만, 이 글을 쓰는 시점의 최신버전인 이클립스 4.4나 JDK 8.0은 한번도 써보지를 않았고 (언제까지 안써볼꺼야?) 다운받아놓은 버전이 이거라서 (시작부터 밑장빼기냐?) 위의 버전을 사용하려고 한다.
1.1 Eclipse 다운받기
www.eclipse.org에 들어가서 Java EE 버전의 이클립스를 다운받는다.
자신의 OS에 맞는 Eclipse를 다운받으면 된다. 요즘에는 다들 8GB 램을 사용하니 OS는 보통 64bit라고 믿어의심치 않는다.(개발자가 아직 Windows 32bit라면... 후...)
1.2 JDK 다운받기
http://www.oracle.com (http://www.oracle.com/technetwork/java/javase/downloads/index.html)에 들어가서 Java SE 버전을 다운받는다.
1.3 JDK 다운받기
http://tomcat.apache.org/에 들어가서 Tomcat 7.0을 다운받는다.
64-bit Windows.zip 파일을 받는다. 보통은 톰캣 설치파일을 받아서 설치를 진행하지만, 우리는 하나의 폴더에 다 담을거라서 그냥 압축파일을 받으면 된다.
1.4 Maven 다운받기
http://maven.apache.org/에 들어가서 Maven 3.2.2를 다운받는다.
2. 환경 구성하기
2.1 압축풀기
C 드라이브 밑에 dev라는 폴더를 만들고, 다운받은 프로그램들을 모두 몰아넣어준다.
Eclipse, Tomcat, Maven은 dev 폴더 밑에 압축을 풀어준다.
그리고 이클립스의 workspace로 사용할 폴더를 하나 만들어주자.
그 후, JDK를 설치하자. 그냥 Next > Next > Next 만 눌러줘도 설치가 완료된다. (당연한 소리를 한다....)
그러면, C:\Program Files\Java 폴더에 jdk1.7.0_60라는 폴더가 생겼을것이다.
위에는 기존에 사용하던 JDK 7.40도 같이 보인다. jdk1.7.0_60폴더를 아까 만든 dev 폴더에 복사 + 붙여넣기 한다.
그러면 다음과 같은 폴더구성이 되었을것이다.
2.2 경로 설정하기
필요한 프로그램은 모두 다운받았으니, 이제 경로를 설정할 차례이다.
eclipse 폴더에 있는 eclipse.ini 파일을 열자.
이제 이클립스에서 우리가 설치한 JDK의 경로를 설정해주고, JVM의 기본메모리 구성을 바꾸려고 한다.
첫번째로, JDK 설정이다.
-vm
C:\dev\jdk1.7.0_60\bin\javaw.exe를 추가해준다.
이 옵션은 vmargs 옵션 위쪽 아무곳이나 위치하면 된다.
두번째로, -vmargs(Virtual MachineArguments) 옵션이다. 이 옵션에 대한 자세한 설명은, 인터넷에 많이 나와있으니, 여기서는 넘어가도록 하겠다.
-Xms 40m, -Xmx51m로 되어있는 것을 -Xms1024, -Xmx2048로 바꾼다.
(RAM이 8GB 이상일 경우만 2048m로 잡는다. 만약 RAM이 4GB 이하라면 1024 이하로 설정하자.)
이 설정을 저장하고, 이클립스를 실행시켜보자.
C:\dev\eclipse에 있는 eclipse.exe를 실행시킨다.
여기까지 설정이 제대로 되었다면, 에러없이 실행되며 다음과 같은 창이 뜰것이다.
이 창은 이클립스의 기본 workspace를 설정하는 창이다.
우리는 dev 밑에 workspace라는 폴더를 이미 만들었으니 그 폴더로 지정해준다. 이 폴더를 계속 workspace로 사용할것이니, Use this as the default and do not ask again도 체크해준다.
다음과 같이 이클립스가 실행되면 성공!
다음 글에서는 Maven 및 Tomcat, 그리고 기타 플러그인을 설치하려고 한다.
출처: http://addio3305.tistory.com/32 [흔한 개발자의 개발 노트]
지난 글에서는 개발환경에 필요한 여러가지 프로그램을 설치하였습니다.
이번 글에서는 지난시간에 완료하지 못했던 설정 및 플러그인을 설치하려고 합니다.
1. Tomcat 설정
이클립스를 실행시키면 다음과 같은 화면이 나온다. 우리는 이제 지난 글에서 다운받아놨던 톰캣과 메이븐의 설정을 하려고 한다.
1. 상단의 Window > Preferences를 선택한다.
2. Server > Runtime Environment을 선택한다.
3. Add... 버튼을 누른다.
4. Apache tomcat 7.0을 선택하고 "Next >" 를 누른다.
5. JRE 및 톰캣 설정을 한다. 우리는 dev 폴더 밑에 tomcat이 있으며, 설치된 JRE는 JDK 1.7.0_60이므로, 이를 선택하여준다.
6. 그럼 다음과 같이 Tomcat이 추가되어있는 것을 확인할 수 있다.
7. Tomcat이 구동되는지 확인해보자!! 하단의 View Tab을 보면 여러가지가 있는데, Servers를 선택하자.
앞으로 개발하는데 이 Servers Tab은 굉장히 많이 쓰이게 되므로, 위치를 이동시켜주는것이 좋다.
Servers 탭을 클릭하고 왼쪽의 Project Explorer 밑에쪽에 위치시켜준다.
↑ 요렇게 되어있는 상태에서
↑ 마우스로 서버 탭의 위치를 선택하면
↑ 요렇게 서버 위치가 바뀌었다. (서버 탭의 크기는 각자 적절하게 조절하면 된다.)
그러면 이와 같은 화면이 나온다. 여기서 Tomcat v7.0 Server를 선택하고 Finish를 누르자. (나중에 프로젝트를 생성하게 되면 그냥 Finish를 누르지는 않는다.)
그럼 이렇게 서버가 생성된다. 이제 서버를 구동시켜주자.
1) 서버 위에 녹색 동그라미에 ▷ 삼각형이 있는 아이콘을 클릭하거나
2) 서버를 우클릭하고 Start를 누르거나
3) 서버 선택하고 Ctrl + Alt + R을 눌러주자. (본인은 단축키로 한다. 단축키 외워두면 굉장히 편하다 ~.~)
↑ 이클립스의 Console 탭에서 다음과 같이 빨간색으로 뭐라고 뭐라고 하면 끄읕~!
(정보: Server startup in XXX ms 문구가 나오는걸 확인한다.)
2. Maven 설정
이제 메이븐을 설정해줘야 한다. 메이븐은 Apache project의 하나로, 프로젝트의 관리와 관련된 여러가지 기능을 제공한다. 다음은 Apache Maven의 공식 설명이다.
Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information.
이것으로 모두 메이븐을 이해했으리라고 생각한..............그럴리가 없잖아!!!!!
사실 메이븐에 대해서 설명하려고 해도 너무 오래걸리는 관계로, 자세한것은 인터넷을 찾아보길 권한다. (절대로 귀찮아서 그런건 절대!!!! 아니다 @_@)
2.1 Maven Repository 변경
메이븐을 사용하는 여러가지 이유 중 가장 큰 이유는 아무래도 프로젝트의 라이브러리들을 관리하기 쉽다는점이다. 기존에는 라이브러리를 다운받아서 이클립스에서 라이브러리를 추가해서 사용했는데, 버전이 바뀌거나 다른 라이브러리로 교체할 경우, 완전히 새로운 라이브러리를 요구하는 경우가 있는 등, 관리하기가 어려웠다.
메이븐을 사용할 경우, 어떤 라이브러리를 사용하겠다라고 명시하면, 인터넷에서(사설 Repository를 관리하면 그곳에서) 필요한 라이브러리를 자동으로 찾아서 추가해준다. 다시말해, 우리가 사용하고자 하는 라이브러리가 다른 어떠한 라이브러리를 필요로 하는지 고민할 필요가 없게 만들어준다!!!
어찌되었든, 이렇게 사용할 라이브러리를 다운받고, 참조할 위치를 변경해주려고 한다. 이 설정을 해놓지 않으면 엄한곳에 라이브러리가 다운받아진다. (사실 이래도 큰 문제는 되지 않지만, 개발환경을 배포할때, 미리 다운받아놓은 라이브러리까지 같이 배포하고, dev 폴더에서 모든것을 관리하기 위해 변경한다.)
C:\dev\apache-maven-3.2.2\conf 폴더로 이동하여 settings.xml을 열어보자.
중간쯤에 주석처리된 localRepository란 부분을 찾아보자.
아마 Default: ${user.home}/.m2/repository라고 되어있는것을 볼 수 있을것이다. 우리가 설정하지 않으면, 사용자 폴더 에 .m2라는 폴더 밑에 repository라는 폴더에서 라이브러리가 된다. 우리는 개발환경이 설치되어있는 dev 폴더에서 모든걸 관리하려고 하니 이 repository 위치를 변경하려고 한다.
라이브러리는 메이븐을 통해서 관리되니까, maven 폴더 안에 repository 폴더를 생성하려고 한다.
C:\dev\apache-maven-3.2.2 폴더 밑에 repository 폴더를 생성한다.
그 다음, settings.xml에서 <localRepository>/path/to/local/repo</localRepository> <<< 요렇게 되어있는 부분을 찾아서 주석을 해제하고, 방금 생성한 repository 폴더로 변경해준다.
<localRepository>C:\dev\apache-maven-3.2.2\repository</localRepository>
2.2 이클립스 내에서 Maven 설정
1. 상단의 window > Preference를 선택한다.
2. Maven > User Settings를 선택한다.
위에서 maven의 기본 설정(Default)는 사용자 폴더 \ .m2 \ repository라고 되어있었던것을 확인할 수 있다.
3. Browse를 클릭해서 setting.xml 파일을 선택한다.
이 setting.xml 파일은 우리가 아까 변경했던 그 파일이다. C:\dev\apache-maven-3.2.2\conf\settings.xml을 선택하자.
4. 변경된 설정을 확인하고 Ok를 누르자.
3. Add Pattern을 누른다.
4. */target/* 을 추가한다.
5. Ok를 눌러서 적용해주자!
원래 플러그인 설치까지 다 하려고 했는데, 너무 양이 많아지는 느낌이다.
다음 글에서는 개발하는데 필요한 플러그인을 설치하는것에 대해서 이야기한다.
출처: http://addio3305.tistory.com/33 [흔한 개발자의 개발 노트]
'(2017) 사이드 프로젝트 > fnl-project(게시판)' 카테고리의 다른 글
15. gmail로 email 인증번호 보내기(비밀번호 찾기 기능/ 회원가입시 이메일 인증) (2) | 2017.06.15 |
---|---|
14. search 검색 기능 (0) | 2017.06.09 |
- Spring 따라하기_샘플 (0) | 2017.06.09 |
- spring 셋팅(pom, log4j, interceptor, mvc작성, mapper작성 등)과 db 셋팅(샘플데이터) (0) | 2017.06.09 |
13. 최신 공지사항 글이 메인 상단에 출력 : ajax (0) | 2017.06.05 |
12. 카테고리 항목 추가 : 카테고리별로 불러오기(DB조인) (0) | 2017.06.04 |
11. interceptor를 이용한 로그인 session처리 (0) | 2017.05.26 |
10. 페이징 처리하기 (2) | 2017.05.26 |