시작하기 전에
이번에 맥북 프로 2019를 Mojave에서 Catalina로 OS 업그레이드를 하면서 JAVA 개발 환경을 구축해보았습니다.
JDK 버전은 JDK LTS 버전 중 최신 버전을 사용할 예정이며 eclipse와 함께 사용하려 합니다.
하기 포스팅은 "스프링부트 시작하기(김인우 저)" 책을 공부하며 적은 포스팅입니다.
JAVA 개발용 폴더 만들기
추후 해당 개발 내용을 공유할 때 편리하도록 디렉토리를 하나 지정해서 사용할 예정입니다. 저는 home폴더/Desktop/STUDY/로 폴더를 생성했습니다. 해당 폴더 내에 workspace 폴더를 생성하여 추후 eclipse 프로젝트들을 저장하도록 하겠습니다.
JDK 설치하기
현재 JDK는 15 버전까지 나와있는 것으로 보이나, LTS 버전을 사용하기 위해 JDK 11 버전 중 제일 최신 버전을 사용하려 합니다. www.azul.com/downloads/zulu-community/?version=java-11-lts&os=macos&package=jdk&show-old-builds=true
dmg 버튼을 누르면 다운로드 폴더에 dmg 파일이 설치되며 해당 파일을 더블 클릭하여 JDK를 설치할 수 있습니다. 설치된 JDK는 /Library/Java/JavaVirtualMachines 폴더 내에서 확인할 수 있습니다. 또한 terminal을 열어 java -version 명령어를 입력하면 현재 설치된 java가 제대로 깔렸는지 확인할 수 있습니다.
Eclipse 설치하기
JAVA 어플리케이션 개발 시, IDE로는 Jetbrain사의 IntelliJ를 많이 사용합니다. 다만, 지금 공부하는 책에서는 Eclipse를 사용하여 해당 책을 읽을 동안에는 Eclipse를 사용하고자 합니다.
먼저, 이클립스 홈페이지에 접속하여 이클립스를 다운로드합니다. 설치 시 Eclipse IDE for Java EE Developers를 선택해야 합니다(웹 개발을 할 예정이므로 JavaEE(Java Platform, Enterprise Edition)를 선택). JavaEE 환경은 웹 어플리케이션 서버(WAS, Web Application Server)를 이용하는 프로그램을 개발할 때 사용됩니다.
www.eclipse.org/downloads/packages/
Eclipse 환경 설정하기
이클립스에서 개발을 진행하다보면, 큰 프로그램을 돌리지도 않았는데 OOM이 나는 경우를 종종 마주할 수 있습니다. 이는 이클립스에 설정된 메모리가 작거나, 여러 작업을 동시에 수행함으로써 발생한 문제입니다. 따라서, 설정하는 PC의 메모리가 충분하다면, 이클립스 자체에 힙 메모리를 충분히 부여해주는 것이 좋습니다.
아래 사진 속 경로의 eclipse.ini 파일을 보면 설정되어 있는 힙 메모리를 확인할 수 있습니다. 기본으로는 -Xms256m, -Xmx2048m로 설정되어 있었으나, 현재 노트북의 메모리가 16GB이므로, -Xms1024m, -Xms2048m로 설정을 변경하였습니다.
Eclipse 플러그인 설치하기
STS와 같이 스프링 어플리케이션 개발에 필수적인 플러그인과 개발을 좀 더 용이하게 할 수 있는 플러그인들을 설치합니다.
1. STS 플러그인 설치하기
STS(Spring Tool Suite)는 스프링 어플리케이션 개발을 위한 이클립스 기반의 개발환경입니다. STS에는 스프링 어플리케이션 개발에 필요한 Eclipse, Git, Maven, AspectJ 등의 개발 도구 뿐 아니라 tomcat을 따로 설치하지 않고 바로 스프링 어플리케이션을 실행시킬 수 있도록 내장 tomcat을 포함하고 있습니다.
STS의 기능 중 모든 기능을 설치해야 하는 것은 아니지만, 아직 어떤 기능이 필요한지 확실하게 알 수 없어 일단 전체 설치를 했습니다.
STS 플러그인 설치는 Eclipse > Help > Eclipse Marketplace > STS(최신버전)을 클릭하여 진행하면 됩니다.
2. Gradle 설치하기
STS 플러그인에는 메이븐이 내장되어 있지만, 책에서 그레이들을 사용하기 때문에 그레이들을 동일하게 설치하겠습니다. 최신 버전 Eclipse의 경우는 Buildship Gradle이 설치되어 있습니다. 따라서, Eclipse Marketplace에서 Buildship 검색 시 Gradle이 설치된 것으로 나온다면, 따로 설치할 필요 없습니다.
Maven VS Gradle
Maven은 XML 기반으로 의존성 및 디렉토리 구조 관리 등 기능을 제공합니다. 하지만, 라이브러리가 추가되거나 각각의 라이브러리가 서로 다른 버전의 라이브러리를 참조하는 종속성을 가지고 있을 경우 관리가 어려워지는 문제가 발생할 수 있습니다. 또한, XML의 특징인 구조화는 사람이 알아보기 쉽지만 문서 양이 방대해지는 단점이 있습니다.
이에 대한 대안으로 Gradle은 JVM 기반의 빌드 도구로 메이븐과 호환이 가능합니다. Gradle은 설정이 간단하고 프로젝트 별로 유연하게 설정할 수 있어 Git과 같은 오픈소스에서도 널리 사용되고 있습니다.
Eclipse 메뉴 및 Perspective 변경하기
하기와 구성을 변경하는 이유는 "스프링부트 시작하기" 책을 쉽게 참고하기 위함이므로, 반드시 동일하게 설정하지 않아도 됩니다.
메뉴 구성 변경하기
먼저 Window > Perspective > Customize Perspective...를 선택합니다. 설정창에 나온 탭들 중 Shortcuts 탭을 선택하여 필요한 메뉴만 클릭합니다. spring framework를 이용한 웹 어플리케이션을 개발할 때에는 Java, JavaScript, Spring, Web, XML이 가장 많이 사용됩니다. 아래 캡쳐를 통해 설정한 Shortcut을 확인할 수 있으며, 설정된 shortcut은 File > New에서 볼 수 있습니다.
패키지 보여 주기(Package Presentation) 변경하기
하나의 프로젝트에는 수 많은 패키지와 클래스들이 존재합니다. 특히 웹을 개발할 때는 MVC 패턴에 맞추어 개발을 진행하는데, 이에 따라 하나의 기능에도 여러 패키지를 생성합니다. 이 경우 패키지의 계층 구조를 한눈에 파악하기 어렵습니다. 따라서 이클립스 내 패키지를 계층형으로 구성하도록 하겠습니다. Project Explorer 옆의 점 세개를 세로로 찍은 부분을 클릭하면 Package Presentation 항목이 있습니다. 해당 항목을 Flat이 아닌 Hierachical로 변경합니다.
Eclipse View 변경하기
개발 진행 시 소스코드 외 필요한 정보들이 있습니다. 이러한 내용들을 쉽게 보기 위해 이클립스 화면 구성을 변경하겠습니다. Window > Show View > Other...를 선택합니다. 먼저, Console, Search, Problems, Progess, Package Explorer를 추가하고 자주 사용하지 않는 Markers, Properties, Data Source Explorer, Snippets 뷰는 화면 하단에서 삭제합니다. Package Explorer의 경우는 Project Explorer 뷰 옆으로 이동시킵니다.
프로젝트 인코딩 설정하기
프로젝트 인코딩이 UTF-8이 아닌, MS949 또는 EUC-KR인 경우 한글이 정상적으로 출력되지 않을 수 있습니다. 따라서, Eclipse 설정을 미리 확인하는 것이 좋습니다. Eclipse > Preferences를 선택한 후 General > Workspace를 선택하면 하단에 인코딩 관련 설정을 확인할 수 있습니다.
'MAC > DEVELOP' 카테고리의 다른 글
[MySQL] DBeaver 사용법(database 생성, table 생성) (0) | 2020.12.21 |
---|---|
[MacOS Catalina] MySQL Community (version 8)와 DBeaver 설치 및 MySQL과 DBeaver 연동법 (0) | 2020.12.13 |
[MAC] Visual Studio Code 설치 및 C++ 개발 환경 세팅 (3) | 2020.12.04 |
[macOS Mojave] Apache Tomcat 설치 (0) | 2020.01.13 |
[macOS Mojave] Homebrew 설치 및 사용법 (0) | 2020.01.13 |