[Java] JDK

곽태민·2023년 5월 31일
0

Java

목록 보기
1/8

개요


Nest.js를 공부하면서 공식 문서를 정독을 하고 있다. 근데 Nest.js의 구조가 AngularSpring의 구조에서 영감을 받았다고 한다.

Nest.js, Angular, Spring 프레임워크의 공통점은 OOP 구조를 갖고 있다는게 가장 큰 공통점인데, 예전부터 공부하면서 "Spring은 OOP의 끝" 이라고 많이 들었다.

(참고로 본인은 프로그래밍을 처음 접한 언어가 Javascript다.)

그래서 Spring을 공부하고자 Java 문법을 공부하기로 마음을 먹었다. 깊게 까지는 아니여도 왜 Nest.js가 Spring에서 영감을 받았는지 경험을 해보고자 한다.

JDK란?


JDKJava Development Kit의 약자로 Java 플랫폼의 등장 이래 지금까지도 가장 많이 사용되고 있는 소프트웨어 개발 키드다. (SDK) 즉, Java로 소프트웨어 개발을 할 수 있도록 여러 기능들을 제공하는 패키지다.

JDK 구성

JDK는 많은 구성을 가지고 있다. 하지만 많은 구성을 정리하려면 끝이 안보이기 때문에 가장 대중적인? 것들을 정리를 해보려고한다.

  • apt: 어노테이션 툴

  • appletviewer: 웹 브라우저 없이 자바 애플릿을 생성하고 디버깅하는 툴

  • javac: Java 컴파일러로 Java 소스파일을 바이트 코드로 변환한다.

  • java: javac가 컴파일을해서 만든 Class 파일을 해석 및 실행한다.

  • jar: 서로 관련있는 Class 라이브러리들과 리소스를 하나의 파일로 묶어주는 툴

  • jab: java 디버깅 툴

  • JRE(Java Runtime Enviroment): Java가 동작하는데 필요한 JVM, 라이브러리 등 다양한 파일들을 포함한다. (Java를 실행하려면 JRE 설치 필수)
    = JVM(Java Virtual Machine): Java가 실제로 동작하는 가상 환경으로 이 JVM으로 인해서 하나의 Java 프로젝트를 개발해도 여러 환경에서 원활하게 실행할 수 있다.

JDK 종류

JDK 종류에는 세 가지가 있는데, 다음과 같다.

  1. Java SE: Java Platform, Standard Edition
    • 표준 Java 플랫폼으로, 표준적인 컴퓨팅 환경을 지원하기 위해 Java 가상 머신 규격 및 API 집합을 포함한다.
    • JavaEE, JavaME는 구체적인 목적에 따라 Java SE를 기반으로 API를 추가하거나 Java 가상 머신 규격 및 API의 일부를 택하여 정의한다.
  2. Java EE: Java Platform, Enterprise Edition
    • Java SE에 웹 어플리케이션 서버에서 동작하는 기능을 추가한 플랫폼이 스펙에 따라 제품을 구현한 것을 웹 어플리케이션 (WAS)라고 한다. ex) tomcat
  3. Java ME: Java Platform, Micro Edition
    • 제한된 자원을 가진 휴대전화, PDA 등에서 Java 프로그래밍 언어를 지원하기 위한 플랫폼 중 하나다.

JDK 설치


강의를 보면서 참고한 JDK 설치 방법 및 구글링을 통해서 설치한 방법들을 참고하여 작성을 해볼 것이다. 참고로 본인은 Mac을 사용하고 있다.

1. JDK 설치 파일 Download

Oracle에서 Java 설치 파일을 Download를 한다.

https://www.oracle.com/java/technologies/downloads/#jdk17-mac

M1칩인 경우는 ARM64를 설치해주고, Intel칩인 경우는 x64 DMG를 설치해주면 된다.

그 후, 압축 파일을 풀어서 설치 버튼을 계속 눌러주면 Download SUCCESS!

JDK 환경변수 설정


Java를 사용하기 위해서는 환경변수를 설정해줘야 한다. 우선 터미널을 실행시켜준다. 실행 후에는

cd /Library/java/javaVirtualMachines를 입력해서 해당 경로로 들어가서 설치된 JDK을 확인한다.

해당 경로에서 cd (설치된 JDK 이름).jdk/Contents/Home 입력을 하고, 해당 경로에 들어갔으면 pwd를 입력해서 경로를 확인해준다.

그 후 pwd를 통해 나온 경로를 복사해준다.

ex) /Library/Java/JavaVirtualMachines/(설치된 JDK 이름).jdk/Contents/Home

그 다음 code ~/.zshrc를 입력하면 VScode가 나오는데 이걸 통해서 편집을 진행한다. 그 후 편한 위치에 복사한 경로를 적어준다.

예시

#JDK version PATH
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home

JDK 버젼 PATH를 지정해줬으면 환경 변수를 추가해줄건데 위에 정의한 JAVA_HOME을 넣어줘서 설정하면 끝이다.

예시

#Add Environment Variable
export PATH=$JAVA_HOME/bin:$PATH

그 후 저장을 하고 터미널을 켜서 Java 환경 변수 설정이 잘 되었는지 아래와 같은 명령어를 통해서 확인을 한다.

echo $JAVA_HOME

위와 같은 명령어를 치면 아래와 같은 경로가 뜰 경우 환경 변수 설정은 완료 된 것이다.

profile
Node.js 백엔드 개발자입니다!

0개의 댓글