본문 바로가기

강의/스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

프로젝트 생성

spring boot 프로젝트 생성


spring.io 에서 초기 세팅이 가능합니다.

https://start.spring.io

위 사이트에 접속 후 아래와 같이 초기 세팅을 진행한 후에 다운로드를 받습니다.

 

다운로드 받은 파일 압축을 풀고 intellij 에서 builde.gradle 파일을 open 합니다.

 

java 11 version 다운로드


- 프로젝트는 11 version으로 다운 받았고, 나는 java 8 version을 사용하고 있었기에 11 version으로 변경을 진행합니다. (다운로드 방법은 아래 참고1, 참고2를 확인 바람)

 

참고1


- java 11 다운로드 방법

https://studee.tistory.com/85

 

자바 설치

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