Mac에서 Spring Framework 개발 환경 만들기
개발 환경
- MacOS Mojave 10.14.6
- jdk1.7.0_45.jdk
Spring Tool Suite
Spring Framework 개발 툴로는 Eclipse를 개량해 만들었다고 하는 STS가 좋다는 말이 많아서 STS3 for Mac을 다운로드 해서 설치하였습니다.
brew로 tomcat 설치
평소대로 latest면 되겠지 라고 생각하고 아래와 같이 커맨드를 입력하고 설치하였습니다.
brew install tomcat
그리고 아래와 같이 설치되었습니다.
/usr/local/Cellar/tomcat/9.0.22: 639 files, 14.7MB, built in 18 seconds
하지만 여기서 문제가 있었는데, 현재 설치되어 있는 Java 버젼은 1.7.0_45로 Java7에 해당하는데 이 버젼은 Tomcat 9 버젼대와는 호환하지 않는다는 것이었습니다.
덕분에 터미널에서 Tomcat을 실행해도 localhost:8080 에 접속해도 아무것도 표시되지 않고 에러가 표시되었습니다.
그래서 아래와 같이 버젼을 지정해서 다시 설치하였습니다.(Java7는 Tomcat 8.5와 호환)
brew install tomcat@8
실행 결과는 아래와 같습니다.
/usr/local/Cellar/tomcat@8/8.5.42: 637 files, 13.2MB, built in 12 seconds
참고
Spring Tool Suite3를 실행해서 Spring legacy project 만들기
- 애플리케이션에 설치된 Spring Tool Suite3를 실행
- File > New > Spring legacy project 를 선택
- 프로젝트 이름을 정하고 Templates에서 Spring MVC Project를 선택하고 다음으로 진행
- top-level-package 이름을 정하고(Namespace 관리 용도) 그 다음은 계속 예스를 선택
그렇게 진행하면 Spring Framework 기반의 프로젝트가 자동으로 만들어 집니다.
프로젝트가 만들어 졌으니 빌드를 하려는데 pom.xml의 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/maven-v4_0_0.xsd"
부근에서 에러가 발생하는 경우가 있습니다. 검색을 해 보니 생각보다 자주 발생하는 에러로 Maven의 버젼탓이라는 이야기도 있고 라이브러리가 다운로드 되어 있지 않아서라는 말도 있는데 어떤 대책을 행하기 전에 어느 순간 에러가 없어져서… ?? 당황?? 스럽기는 하였습니다만 오늘은 Hello world를 보는 것이 목적이라 빌드에 성공한 것에 의의를 두기로 했습니다. 재발시에는 좀 붙잡고 있어야 할지도…
빌드가 되었으므로 마지막 남은 단계로 서버 설정을 하려고 서버 추가를 하는데 Tomcat의 디렉토리를 지정하는 다이얼로그에서 아래와 같은 메세지가 나오면서 다음으로 진행을 할 수 없었습니다.
Unknown version of Tomcat was specified.
검색해보니 brew 로 설치한 경우는 tomcat 설치 경로 하위에 libexec 디렉토리를 톰켓 디렉토리로 지정해야 한다고 하네요… 그래서 아래와 같이 수정해서 서버 추가를 마쳤습니다.
/usr/local/Cellar/tomcat@8/8.5.42/libexec
그리고 대망의 Hello world!
3, 4번째 줄은 한국어와 일본어 표기 확인을 위해 추가한 문장입니다.
덧붙여 템플릿을 그대로 실행했을때는 한글과 일본어가 깨지는 문제가 있었는데 그 문제는 JSP파일의 최상단에 아래와 같이 인코딩 설정을 지정해 주니 해결되었습니다.
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
Spring Framework는 이걸로 겨우 첫걸음을 뗀 느낌이네요. 이제부터 살을 붙여나가면서 공부해 나갈 예정입니다.
PS. 예나 지금이나 Java는 환경설정이 까다로운거 같습니다. Visual Studio에 너무 익숙해 진듯…