내용 참고 : 코드로 배우는 스프링 웹 프로젝트 개정판
아래 링크 참고.
https://velog.io/@virtualplastic/Java-%EC%9E%90%EB%B0%94-JDK-1.8-%EC%84%A4%EC%B9%98
명령 프롬프트 창(window + R 또는 검색창에서 cmd)에서 java -version
입력
JAVA SE 8 또는 11 버전을 추천한다. (JAVA SE 8 = JDK 1.8)
참고 - 자바 버전
JDK는 Java Development Kit의 약어로, 자바를 사용하려면 이 프로그램을 깔면 된다.
처음에는 JDK 1.0, 1.1, ... 과 같이 이름이 붙어 출시됐는데, 1.5부터는 자바에서 JAVA SE 5란 이름으로 나오기 시작했다. 하지만 개발자들을 위한 이름은 여전히 JDK 1.x 였다.
JAVA SE 8까지도 JDK 1.8이라고 하다가, 9부터는 더 이상 1.x식으로 명명하지 않는다. JAVA SE 11은 JDK 1.11 또는 2가 아니라 그냥 11이다.
자바는 스프링 혹은 스프링부트와 호환될 수 있게 버전을 잘 생각하고 깔아야 한다.
🔗 Spring과 Java 버전 호환
🔗 Spring Boot와 Java 버전 호환
Spring | Java |
---|---|
Spring Framework 6.0.x | JDK 17-21 (expected) |
Spring Framework 5.3.x | JDK 8-19 (expected) |
Spring Framework 5.2.x | JDK 8-15 |
Spring Framework 5.1.x | JDK 8-12 |
Spring Framework 5.0.x | JDK 8-10 |
Spring Framework 4.3.x | JDK 6-8 |
내 노트북에는 JDK 1.8이 깔려 있으니 Spring 5.3을 깔기로 한다.
스프링 개발에서는 통합 개발도구로 보통 STS, 이클립스의 STS 플러그인, 또는 Intellij Ultimate을 많이 사용한다.
STS는 이클립스 기반의 스프링에 최적화된 통합 개발 환경(IDE: Integrated Development Environment)이다. 직접 설치 파일을 다운로드해 설치할 수도 있고, 이클립스에 STS 플러그인을 이용해 설치할 수도 있다.
플러그인의 경우는 이클립스 버전이나 기타 플러그인들과 호환성 문제가 발생할 수 있어 숙련자가 사용하는 것이 바람직하다.
Intellij 사용 경험과 스프링 개발 경험이 있다면 Intellij ultimate도 좋다. 하지만 유료로 이용해야 한다. (학생 등의 경우 무료 사용 방법도 있음)
여기서는 STS를 직접 다운로드해 설치한다. STS4는 스프링 부트에 특화되어 있으므로 스프링 개발에 특화된 STS3을 다운받아 사용하도록 한다.
윈도우 사용자 계정 이름을 반드시 영어로 사용해야 한다고 한다.
계정 이름을 바꿨는데 윈도우와 바로 연동이 안 돼서 찾아보니 변경하는 방법이 몇 가지 있다. 그런데 좀 불안해 보인다... 그냥 새 계정 생성이나 로컬 계정 사용이 나을 듯 싶다...
...갑자기 의욕이 바닥까지 떨어져서 더 이상 진행하고 싶지 않다
...하지만 진행하자...
그래. 이참에 노트북을 정리하자...
마이크로소프트 계정을 하나 새로 만드는 쪽이 간편해 보인다.
사용자 계정 하나 만들어 추가하고 다시 설치 시작.
계정 새로 파면 자바부터 다시 깔아야 하는 줄 알았는데 그건 아니었다. 천만다행.
https://github.com/spring-attic/toolsuite-distribution/wiki/Spring-Tool-Suite-3
위 링크에서 Latests STS3 Downloads
를 찾아 자신의 개발환경(윈도우, 맥, 리눅스)에 맞는 버전을 다운받고 압축을 푼다. 시행착오가 많아서 결론부터 말하자면 버전은 3.9.11을 받았다. (이클립스 버전은 4.14로 받는다. - 학원에서는 4.12 받음)
폴더 이름이 무지 길어서 경로가 너무 깁니다.
라는 오류가 뜰 수 있다. 그럴 때는 압축 풀기 경로를 C드라이브로 변경해서 진행해준다.
아래는 시행착오 과정.
압축을 푼 뒤
sts-bundle
폴더에서sts-3.x.RELEASE
폴더를 찾아STS.exe
파일을 실행한다
....기껏 받았더니 JAVA 11 이상만 지원한다고 한다... (나는 3.9.18을 받았다)Version 1.8 of the JVM is not suitable for this product. Version: 11 or greater is required.
다시 받아야하나 했는데
sts.ini
파일 수정으로 해결할 수 있다고 한다.
sts.ini
파일에서 아래와 같은 부분을 찾아 11을 1.8로 수정한다.
그리고 파일 상단에는javaw.exe
의 위치를 찾아 아래 내용을 추가했다.-vm C:\Program Files\Java\jdk1.8.0_321\bin\javaw.exe
...그래도 아래처럼 11버전 실행 조건에 걸려서 실행이 안 된다.
filter:="(&(osgi.ee=JavaSE)(version=11)
더 이상 뭘 찾아 수정하면 잘못될까봐(절대 귀찮아서가 아니다) 그냥 sts3의 이전 버전을 다시 받기로 한다. 받았던 파일을 지우고
Previous STS3 Versions
에서 3.9.11을 다운로드한다.
아무튼 3.9.11을 받아서 압축을 푼 뒤, exe파일 실행 전에 sts-bundle
폴더에서 sts-3.x.RELEASE
폴더를 찾아 sts.ini
파일의 상단에 아래처럼 내용을 추가해준다. (본인 컴퓨터의 javaw.exe
위치를 찾아 복사해야 한다)
-vm
C:\Program Files\Java\jdk1.8.0_321\bin\javaw.exe
STS.exe
파일을 실행한다.
이때 아래와 같은 오류가 뜰 수 있다.
구글링해보니 보통은 이런 에러가 뜨면 ini파일을 수정해주는데, 나는 원래는 이런 오류가 없다가 ini파일을 수정하니 이런 오류가 뜬다... 그냥 지우고 실행하니 해결되었다.
설치 후에는 인코딩 방식을 MS949 -> UTF-8로 바꿔준다.
🔗 Tomcat 설정 참조.
Window > Preferences > Server > Runtimer Environments > Add > Apache Tomcat 9 선택, Tomcat 설치된 경로 지정
create a new server로 새 서버 생성