spring boot 프로젝트 생성
spring.io 에서 초기 세팅이 가능합니다.
위 사이트에 접속 후 아래와 같이 초기 세팅을 진행한 후에 다운로드를 받습니다.
다운로드 받은 파일 압축을 풀고 intellij 에서 builde.gradle 파일을 open 합니다.
java 11 version 다운로드
- 프로젝트는 11 version으로 다운 받았고, 나는 java 8 version을 사용하고 있었기에 11 version으로 변경을 진행합니다. (다운로드 방법은 아래 참고1, 참고2를 확인 바람)
참고1
- java 11 다운로드 방법
자바 설치
1. https://www.oracle.com/kr/java/technologies/javase-jdk11-downloads.html 이동
2. macOS Installer의 jdk 다운로드
- JDK : Java Development Kit 자바로 소프트웨어를 개발할 수 있도록 기능을 담을 패키지
3. 오라클 로그인 (오라클 계정 없으면 가입)
4. 로그인되면 자동 다운로드
JAVA 버전 변경
1. 현재 기본으로 설정된 자바 버전 확인
1) 터미널에서 java -version 입력
java -version
openjdk version "1.8.0_222"
현재 버전은 자바 8(=1.8) 버전 이다.
2. 설치된 전체 자바 버전 확인
1) /usr/libexec/java_home -V
/usr/libexec/java_home -V
Matching Java Virtual Machines (3):
12, x86_64: "Java SE 12" /Library/Java/JavaVirtualMachines/jdk-12.jdk/Contents/Home
11.0.11, x86_64: "Java SE 11.0.11" /Library/Java/JavaVirtualMachines/jdk-11.0.11.jdk/Contents/Home
1.8.0_222, x86_64: "AdoptOpenJDK 8" /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
- /usr/libexec : 실행 파일이 모여있는 디렉터리
- java_home : PC에 세팅된 Java와 JVM 정보를 조회하는 파일
- JVM : Java Virtual Machine (가상 머신이란 물리적 머신과 유사한 머신을 소프트웨어로 구현한 것)
--- JVM은 자바 애플리케이션을 클래스 로더를 통해 읽고, Java API와 함께 실행한다.
--- Java 와 OS 사이에 중재자 역할을 하기에 OS에 상관없이 재사용 가능하다.
--- 메모리 관리와 Garbage Collection(GC) 역할을 한다. GC란 할당된 메모리에 더이상 사용하지 않는 메모리를 해제하는 행동
--- 스택기반 가상 머신이다. 피연산자와 결과를 스택에 저장하기에 메모리 위치를 기억할 필요가 없다.
- JVM 실행 방식
--1) 프로그램이 실행되면 JVM은 OS로 부터 메모리를 할당 받는다.
--2) 자바 컴파일러(javac)가 자바 소스(.java) 읽어 자바 바이트코드(.class)로 변환한다.
--3) 클래스로더를 통해 class 파일은 JVM으로 로딩한다.
--4) 로딩된 class 파일을 Execution engine 으로 해석한다.
--5) 해석된 바이트코드가 Runtime Data Area에 배치되어 실행된다.
3. 자바 11로 변경하기
1) sudo vi ~/.bash_profile 입력하고 비번 입력
sudo vi ~/.bash_profile
Password:
2) i 눌러 INSERT 모드로 전환하고 export 행의 버전 11로 변경
export JAVA_HOME=$(/usr/libexec/java_home -v 11)
3) ESC 키를 누르고 :wq 입력해서 저장후 종료
4) source ~/.bash_profile 입력 (source 명령어로 변경된 패스를 실행한다.)
source ~/.bash_profile
5) 변경된 버전 확인
java -version
java version "11.0.11" 2021-04-20 LTS
참고2
- java11 설치를 완료하였지만 intellij 에서는 java8을 여전히 사용하고 있어서 발생하는 문제이다.
https://hothoony.tistory.com/1105
오류
java: warning: source release 11 requires target release 11
오류 발생시 확인해 볼 내용
build.gradle
- sourceCompatibility = '11'
Project Structure > Project Settings > Project
- Project SDK = 11
- Project language level = 11
Project Structure > Platform Settings > SDKs
- SDKs = 11
'강의 > 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술' 카테고리의 다른 글
회원 Controller 세팅 (0) | 2022.04.06 |
---|---|
스프링 빈을 등록하는 2가지 방법 (0) | 2022.04.06 |
회원 Service 생성 및 Test (0) | 2022.04.06 |
회원 Repository 생성 및 Test (0) | 2022.04.06 |
스프링 웹 개발 (0) | 2022.04.06 |