나무모에 미러 (일반/밝은 화면)
최근 수정 시각 : 2025-02-12 02:14:37

JDK


파일:다른 뜻 아이콘.svg  
#!if 넘어옴1 != null
''''''{{{#!if 넘어옴2 != null
, ''''''}}}{{{#!if 넘어옴3 != null
, ''''''}}}{{{#!if 넘어옴4 != null
, ''''''}}}{{{#!if 넘어옴5 != null
, ''''''}}}{{{#!if 넘어옴6 != null
, ''''''}}}{{{#!if 넘어옴7 != null
, ''''''}}}{{{#!if 넘어옴8 != null
, ''''''}}}{{{#!if 넘어옴9 != null
, ''''''}}}{{{#!if 넘어옴10 != null
, ''''''}}}은(는) 여기로 연결됩니다. 
#!if 설명 == null && 리스트 == null
{{{#!if 설명1 == null
다른 뜻에 대한 내용은 아래 문서를}}}{{{#!if 설명1 != null
{{{#!html 니혼 팔콤과 관련된 사운드 팀 및 밴드}}}에 대한 내용은 [[jdk(팔콤)]] 문서{{{#!if (문단1 == null) == (앵커1 == null)
를}}}{{{#!if 문단1 != null & 앵커1 == null
의 [[jdk(팔콤)#s-|]]번 문단을}}}{{{#!if 문단1 == null & 앵커1 != null
의 [[jdk(팔콤)#|]] 부분을}}}}}}{{{#!if 설명2 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단2 == null) == (앵커2 == null)
를}}}{{{#!if 문단2 != null & 앵커2 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단2 == null & 앵커2 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명3 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단3 == null) == (앵커3 == null)
를}}}{{{#!if 문단3 != null & 앵커3 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단3 == null & 앵커3 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명4 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단4 == null) == (앵커4 == null)
를}}}{{{#!if 문단4 != null & 앵커4 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단4 == null & 앵커4 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명5 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단5 == null) == (앵커5 == null)
를}}}{{{#!if 문단5 != null & 앵커5 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단5 == null & 앵커5 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명6 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단6 == null) == (앵커6 == null)
를}}}{{{#!if 문단6 != null & 앵커6 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단6 == null & 앵커6 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명7 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단7 == null) == (앵커7 == null)
를}}}{{{#!if 문단7 != null & 앵커7 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단7 == null & 앵커7 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명8 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단8 == null) == (앵커8 == null)
를}}}{{{#!if 문단8 != null & 앵커8 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단8 == null & 앵커8 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명9 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단9 == null) == (앵커9 == null)
를}}}{{{#!if 문단9 != null & 앵커9 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단9 == null & 앵커9 != null
의 [[#|]] 부분을}}}}}}{{{#!if 설명10 != null
, {{{#!html }}}에 대한 내용은 [[]] 문서{{{#!if (문단10 == null) == (앵커10 == null)
를}}}{{{#!if 문단10 != null & 앵커10 == null
의 [[#s-|]]번 문단을}}}{{{#!if 문단10 == null & 앵커10 != null
의 [[#|]] 부분을}}}}}}
#!if 설명 == null
{{{#!if 리스트 != null
다른 뜻에 대한 내용은 아래 문서를}}} 참고하십시오.

#!if 리스트 != null
{{{#!if 문서명1 != null
 * {{{#!if 설명1 != null
니혼 팔콤과 관련된 사운드 팀 및 밴드: }}}[[jdk(팔콤)]] {{{#!if 문단1 != null & 앵커1 == null
문서의 [[jdk(팔콤)#s-|]]번 문단}}}{{{#!if 문단1 == null & 앵커1 != null
문서의 [[jdk(팔콤)#|]] 부분}}}}}}{{{#!if 문서명2 != null
 * {{{#!if 설명2 != null
: }}}[[]] {{{#!if 문단2 != null & 앵커2 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단2 == null & 앵커2 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명3 != null
 * {{{#!if 설명3 != null
: }}}[[]] {{{#!if 문단3 != null & 앵커3 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단3 == null & 앵커3 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명4 != null
 * {{{#!if 설명4 != null
: }}}[[]] {{{#!if 문단4 != null & 앵커4 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단4 == null & 앵커4 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명5 != null
 * {{{#!if 설명5 != null
: }}}[[]] {{{#!if 문단5 != null & 앵커5 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단5 == null & 앵커5 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명6 != null
 * {{{#!if 설명6 != null
: }}}[[]] {{{#!if 문단6 != null & 앵커6 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단6 == null & 앵커6 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명7 != null
 * {{{#!if 설명7 != null
: }}}[[]] {{{#!if 문단7 != null & 앵커7 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단7 == null & 앵커7 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명8 != null
 * {{{#!if 설명8 != null
: }}}[[]] {{{#!if 문단8 != null & 앵커8 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단8 == null & 앵커8 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명9 != null
 * {{{#!if 설명9 != null
: }}}[[]] {{{#!if 문단9 != null & 앵커9 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단9 == null & 앵커9 != null
문서의 [[#|]] 부분}}}}}}{{{#!if 문서명10 != null
 * {{{#!if 설명10 != null
: }}}[[]] {{{#!if 문단10 != null & 앵커10 == null
문서의 [[#s-|]]번 문단}}}{{{#!if 문단10 == null & 앵커10 != null
문서의 [[#|]] 부분}}}}}}

1. 개요2. 상세3. OpenJDK

1. 개요

Java Development Kit

썬 마이크로시스템즈에서 개발한 Java 환경에서 돌아가는 프로그램을 개발하는 데 필요한 툴을 모아놓은 소프트웨어 패키지. JRE(Java Runtime Environment)[1]와 Java 바이트코드 컴파일러, Java 디버거 등을 포함하는 개발 도구로 이루어져 있다. IBM에서 자체적으로 변형한 IBM JDK와 오픈 소스 버전인 OpenJDK도 있다.

2. 상세

Java Applet이 완전히 퇴출되고 HTML5와 같은 신규 기술들이 대거 적용된 현재의 인터넷 환경에서는 예전보다 필요성이 줄어들었으나, Java 관련 소프트웨어를 개발할 때 (안드로이드 앱, Spring 프레임워크 등)는 꼭 필요하다. 당연하지만 정부 관련 프로젝트에서 사용되는 전자정부표준프레임워크도 Spring 프레임워크 기반인 만큼 JDK가 필요하다. 이클립스, IntelliJ IDEA 등 Java를 이용한 IDE는 기본적으로 소프트웨어 개발을 위한 도구인 만큼 JDK 설치를 요구하며, Visual Studio Code에서 자바 개발용 플러그인을 설치할 때도 JDK 경로를 설정하거나 JDK를 다운로드하는 옵션을 제공한다.

JDK는 어디까지나 소프트웨어 개발을 위한 패키지이기 때문에 일반 사용자는 JRE만 설치해도 Java 프로그램들을 구동시키는 데는 별 지장이 없다. Java 17 기준으로 Windows x64 MSI 설치 파일의 크기는 JDK 168MB, JRE 31MB로 JRE가 5분의 1 미만인 만큼 본인이 개발자이거나 후술할 경우처럼 특별히 필요하지 않은 이상 굳이 JDK를 설치할 필요는 없다. 하지만 JSP 컨테이너 등 일부 프로그램은 실행에 JDK를 요구하기도 한다. JSP로 예를 들자면 실행 중에 코드가 컴파일될 필요가 있기 때문. Java 9 이후부터는 별도의 JRE 설치가 필요 없도록 개발자들이 jlink라는 도구를 이용해 프로그램 배포 시 구동에 필요한 Java 모듈을 함께 배포하는 것을 권장하고 있으며, 이클립스 재단에서는 2021년부터 아예 JRE 배포를 중단했다가 혼동을 우려했는지 다시 제공하고 있다.

2024년 1월 기준 최신 일반 및 LTS 버전은 JDK 21, Early Access 빌드 버전은 23이다.

3. OpenJDK

Oracle JDK는 상업적 이용을 할 경우 유료이기 때문에, 무료로 이용하고자 할 경우 Oracle의 OpenJDK 빌드 또는 Zulu JDK, AdoptOpenJDK 등의 OpenJDK 기반 빌드를 이용하여야 한다. OpenJDK는 GPL 라이선스이지만 classpath exception이 적용되므로 Oracle의 지원이 메이저 버전이 올라가는 6개월마다 끊기는 점 외에는 자유롭게 사용할 수 있다. 기업의 경우 IBM, Red Hat 등의 저명한 소프트웨어 기업이 제공하는 OpenJDK 빌드를 이용할 수도 있다. JetBrains는 IntelliJ IDEA를 만들기 위해 OpenJDK를 마개조에 가깝게 뜯어고쳤다고 한다.

[1] Java Virtual Machine 등 자바 프로그램 구동을 위한 모듈들이 포함된 패키지.