Mac에서 Spring Framework 개발 환경 만들기

Mac에서 Spring Framework 개발 환경 만들기

개발 환경

Spring Tool Suite

Spring Tool Suite3

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 버젼대와는 호환하지 않는다는 것이었습니다.

0060-03.png

덕분에 터미널에서 Tomcat을 실행해도 localhost:8080 에 접속해도 아무것도 표시되지 않고 에러가 표시되었습니다.

0060-04.png

그래서 아래와 같이 버젼을 지정해서 다시 설치하였습니다.(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 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!

0060-01.png

3, 4번째 줄은 한국어와 일본어 표기 확인을 위해 추가한 문장입니다.

덧붙여 템플릿을 그대로 실행했을때는 한글과 일본어가 깨지는 문제가 있었는데 그 문제는 JSP파일의 최상단에 아래와 같이 인코딩 설정을 지정해 주니 해결되었습니다.

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

0060-02.png

Spring Framework는 이걸로 겨우 첫걸음을 뗀 느낌이네요. 이제부터 살을 붙여나가면서 공부해 나갈 예정입니다.

PS. 예나 지금이나 Java는 환경설정이 까다로운거 같습니다. Visual Studio에 너무 익숙해 진듯…

Pie's Tech Note

생계형 개발자의 메모장

comments powered by Disqus

    rss facebook twitter github youtube mail spotify instagram linkedin google google-plus pinterest medium vimeo stackoverflow reddit quora