1. JDK μ€μΉνκΈ°
JDK(Java Development Kit)λ Java μΈμ΄λ₯Ό κ°λ°νκ³ μ€ννκΈ° μν΄ νμν λꡬμ λΌμ΄λΈλ¬λ¦¬λ₯Ό ν¬ν¨νλ ν¨ν€μ§μ λλ€. JDKλ₯Ό μ€μΉνλ κ³Όμ μ λ€μκ³Ό κ°μ΅λλ€.
JDK λ€μ΄λ‘λνκΈ°
- μ€λΌν΄(Oracle) 곡μ μΉμ¬μ΄νΈ(https://www.oracle.com/java/technologies/javase-jdk15-downloads.html)μ μ μν©λλ€.
- λ€μ΄λ‘λ νμ΄μ§μμ μ¬μ©μ€μΈ μ΄μ체μ μ JDK λ²μ μ λ§λ μ€μΉ νμΌμ μ νν©λλ€. μΌλ°μ μΌλ‘ "Windows x64 Installer"λ "macOS Installer"λ₯Ό μ ννλ©΄ λ©λλ€.
- λ€μ΄λ‘λκ° μλ£λλ©΄ μ€μΉ νμΌμ μ€νν©λλ€.
JDK μ€μΉνκΈ°
- JDK μ€μΉ νμΌμ μ€ννλ©΄ μ€μΉ λ§λ²μ¬κ° λνλ©λλ€. μ΄λ, JDKλ₯Ό μ€μΉν κ²½λ‘λ₯Ό μ νν μ μμ΅λλ€. κΈ°λ³Έμ μΌλ‘λ μ μλ κ²½λ‘λ₯Ό κ·Έλλ‘ μ¬μ©ν΄λ 무방ν©λλ€.
- μ€μΉ μ νμ μ νν©λλ€. μΌλ°μ μΌλ‘λ "Development Tools"λ₯Ό μ ννλ©΄ λ©λλ€.
- μ€μΉλ₯Ό μμνκΈ° μ μ, μ¬μ©μ κ³μ μ μνΈλ₯Ό μ λ ₯ν΄μΌ ν μλ μμ΅λλ€. κ΄λ¦¬μ κΆνμΌλ‘ μ€νν κ²½μ°, μνΈλ₯Ό μ 곡νμ¬ μ€μΉλ₯Ό κ³μ μ§νν©λλ€.
- μ€μΉκ° μ§νλλ©΄μ νλ‘κ·Έλ μ€ λ°κ° νμλ©λλ€. μ€μΉκ° μλ£λλ©΄ λ§μΉ¨ λ²νΌμ ν΄λ¦νμ¬ μ€μΉλ₯Ό μ’ λ£ν©λλ€.
JDK μ€μΉ νμΈνκΈ°
- μ€μΉκ° μ μμ μΌλ‘ μλ£λμλ€λ©΄, λͺ λ Ή ν둬ννΈλ ν°λ―Έλμ μ€νν©λλ€.
- "java -version" λͺ λ Ήμ΄λ₯Ό μ λ ₯νμ¬ μ€μΉλ JDKμ λ²μ μ νμΈν μ μμ΅λλ€. λ²μ μ λ³΄κ° μΆλ ₯λλ©΄ JDKλ μ±κ³΅μ μΌλ‘ μ€μΉλ κ²μ λλ€.
μ΄μμΌλ‘ JDK μ€μΉ κ³Όμ μ΄ μ’ λ£λμμ΅λλ€. μ΄μ JDKλ₯Ό μ¬μ©νμ¬ Java μ ν리μΌμ΄μ μ κ°λ°νκ³ μ€νν μ μκ² λμμ΅λλ€.
2. JDK νκ²½λ³μ μ€μ νκΈ°
νκ²½λ³μλ μ΄μ체μ μμ μ¬μ©λλ λ³μλ‘, μμ€ν λ΄μμ λ€μν νλ‘κ·Έλ¨μ΄ 곡μ νμ¬ μ¬μ©ν μ μλλ‘ νλ μ€μ μ λλ€. JDKλ₯Ό μ¬μ©νκΈ° μν΄ νκ²½λ³μλ₯Ό μ€μ ν΄μΌ ν©λλ€. λ€μμ JDK νκ²½λ³μ μ€μ μ μν κ³Όμ μ λλ€.
JDK μ€μΉ κ²½λ‘ νμΈνκΈ°
- JDK μ€μΉκ° μλ£λ ν, μ€μΉλ JDKμ κ²½λ‘λ₯Ό νμΈν΄μΌ ν©λλ€.
- μΌλ°μ μΌλ‘ JDKλ "C:\Program Files\Java\jdk[λ²μ ]" (Windows) λλ "/Library/Java/JavaVirtualMachines/jdk[λ²μ ].jdk" (macOS) κ²½λ‘μ μ€μΉλ©λλ€.
JDK νκ²½λ³μ μ€μ νκΈ° (Windows)
- μμ λ©λ΄μμ "μ μ΄ν"μ κ²μνμ¬ μ μ΄νμ μ€νν©λλ€.
- μ μ΄νμμ "μμ€ν λ° λ³΄μ"μ μ νν ν, "μμ€ν "μ ν΄λ¦ν©λλ€.
- μ’μΈ‘μ μλ "κ³ κΈ μμ€ν μ€μ "μ ν΄λ¦ν©λλ€.
- "κ³ κΈ" νμμ "νκ²½λ³μ" λ²νΌμ ν΄λ¦ν©λλ€.
- "μμ€ν λ³μ" μΉμ μμ "μλ‘ λ§λ€κΈ°" λ²νΌμ ν΄λ¦ν©λλ€.
- λ³μ μ΄λ¦μ "JAVA_HOME"μ μ λ ₯ν©λλ€.
- λ³μ κ°μ JDKμ μ€μΉ κ²½λ‘λ₯Ό μ λ ₯ν©λλ€. μλ₯Ό λ€μ΄, "C:\Program Files\Java\jdk[λ²μ ]"μ΄λΌλ©΄ ν΄λΉ κ²½λ‘λ₯Ό μ λ ₯ν©λλ€.
- "νμΈ" λ²νΌμ ν΄λ¦νμ¬ λ³μλ₯Ό μΆκ°ν ν, μμ€ν λ³μ λͺ©λ‘μμ "JAVA_HOME"μ μ°Ύμ ν΄λ¦ν©λλ€.
- "νΈμ§" λ²νΌμ ν΄λ¦ν©λλ€.
- "λ³μ κ°"μ λμ "\bin"μ μ λ ₯ν ν, κ²½λ‘λ₯Ό μμ ν μ λ ₯ν©λλ€. μλ₯Ό λ€μ΄, "C:\Program Files\Java\jdk[λ²μ ]\bin"κ³Ό κ°μ΄ μ λ ₯ν©λλ€.
- "νμΈ" λ²νΌμ ν΄λ¦νμ¬ λͺ¨λ μ€μ μ μ μ₯ν©λλ€.
JDK νκ²½λ³μ μ€μ νκΈ° (macOS)
- μ ν λ©λ΄μμ "μμ€ν νκ²½μ€μ "μ μ νν©λλ€.
- "μ¬μ©μ λ° κ·Έλ£Ή"μ ν΄λ¦ν©λλ€.
- νμ¬ μ¬μ©μμ μμ΄μ½μ ν΄λ¦νμ¬ μ¬μ©μ μ€μ μ°½μ μ½λλ€.
- "κ³ κΈ μ΅μ "μ ν΄λ¦ν©λλ€.
- "λ‘κ·ΈμΈ μ Έ"μ "λ‘κ·ΈμΈ μκΈ°"λ‘ μ€μ λμ΄ μλμ§ νμΈν©λλ€. κ·Έλ μ§ μμ κ²½μ° "λ‘κ·ΈμΈ μκΈ°"λ‘ λ³κ²½νκ³ μ μ₯ν©λλ€.
- ν°λ―Έλμ μ€νν©λλ€.
- λ€μ λͺ
λ Ήμ΄λ₯Ό μ
λ ₯νμ¬ μ¬μ©μμ νλ‘ν νμΌμ μ½λλ€.
nano ~/.bash_profile
- νμΌμ 맨 μλλ‘ μ΄λνμ¬ λ€μ λ΄μ©μ μΆκ°ν©λλ€.
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk[λ²μ ].jdk/Contents/Home export PATH=$JAVA_HOME/bin:$PATH
- "Control + X"λ₯Ό λλ¬ λκ°κΈ° μ μ λ³κ²½ μ¬νμ μ μ₯ν©λλ€.
- "Y"λ₯Ό μ λ ₯νκ³ μν° ν€λ₯Ό λλ¬ νμΌμ μ μ₯ν©λλ€.
μ΄μμΌλ‘ JDK νκ²½λ³μ μ€μ κ³Όμ μ΄ μ’ λ£λμμ΅λλ€. μ΄μ JDKλ₯Ό μ μμ μΌλ‘ μ¬μ©ν μ μκ² λμμ΅λλ€.
3. JDK μ€μΉ κ²½λ‘ νμΈνκΈ°
JDKλ₯Ό μ¬μ©νκΈ° μν΄μ λ¨Όμ μ€μΉλ JDKμ κ²½λ‘λ₯Ό νμΈν΄μΌν©λλ€. λ€μμ JDK μ€μΉ κ²½λ‘λ₯Ό νμΈνλ λ°©λ²μ λλ€.
Windowsμμ JDK μ€μΉ κ²½λ‘ νμΈνκΈ°
- JDK μ€μΉκ° μλ£λ ν, μμ λ©λ΄λ₯Ό μ΄μ΄ "μ μ΄ν"μ κ²μνμ¬ μ μ΄νμ μ€νν©λλ€.
- μ μ΄νμμ "μμ€ν λ° λ³΄μ"μ μ νν ν, "μμ€ν "μ ν΄λ¦ν©λλ€.
- "κ³ κΈ μμ€ν μ€μ "μ ν΄λ¦ν©λλ€.
- "κ³ κΈ" νμμ "νκ²½λ³μ" λ²νΌμ ν΄λ¦ν©λλ€.
- "μμ€ν λ³μ" μΉμ μμ "Path"λ₯Ό ν΄λ¦ν ν, "νΈμ§" λ²νΌμ ν΄λ¦ν©λλ€.
- νΈμ§ μ°½μμ κ²½λ‘λ₯Ό νμΈν μ μμ΅λλ€. ν΄λΉ κ²½λ‘ μ€ JDK μ€μΉ κ²½λ‘λ₯Ό μ°Ύμ 볡μ¬ν΄λ‘λλ€.
macOSμμ JDK μ€μΉ κ²½λ‘ νμΈνκΈ°
- Finderλ₯Ό μ΄κ³ , μλ¨ λ©λ΄μμ "μ΄λ"μ μ νν ν, "μ νΈλ¦¬ν°"λ₯Ό ν΄λ¦ν©λλ€.
- "ν°λ―Έλ"μ λλΈ ν΄λ¦νμ¬ ν°λ―Έλ μ°½μ μ½λλ€.
- ν°λ―Έλ μ°½μ λ€μ λͺ
λ Ήμ΄λ₯Ό μ
λ ₯ν©λλ€.
/usr/libexec/java_home
- μ€νν λͺ λ Ήμ΄μ λ°λΌ ν°λ―Έλ μ°½μ JDK μ€μΉ κ²½λ‘κ° μΆλ ₯λ κ²μ λλ€. ν΄λΉ κ²½λ‘λ₯Ό 볡μ¬ν΄λ‘λλ€.
μμ λ°©λ²μ ν΅ν΄ JDK μ€μΉ κ²½λ‘λ₯Ό νμΈν μ μμ΅λλ€. κ²½λ‘κ° μ¬λ°λ‘ 볡μ¬λμλ€λ©΄, μ΄ν νκ²½λ³μ μ€μ μμ μ¬μ©νκ² λ©λλ€.
4. JDK λ²μ νμΈνκΈ°
JDKλ₯Ό μ¬μ©νκΈ° μ μ νμ¬ μ€μΉλ JDKμ λ²μ μ νμΈν΄μΌν©λλ€. JDK λ²μ μ νμΈνλ λ°©λ²μ λ€μκ³Ό κ°μ΅λλ€.
Windowsμμ JDK λ²μ νμΈνκΈ°
- μμ λ©λ΄μμ "λͺ λ Ή ν둬ννΈ"λ₯Ό κ²μνμ¬ λͺ λ Ή ν둬ννΈ μ°½μ μ½λλ€.
- λͺ
λ Ή ν둬ννΈ μ°½μ λ€μ λͺ
λ Ήμ΄λ₯Ό μ
λ ₯ν©λλ€.
java -version
- μν° ν€λ₯Ό λλ₯΄λ©΄ μ€μΉλ JDKμ λ²μ μ λ³΄κ° μΆλ ₯λ©λλ€. μλ₯Ό λ€μ΄, "java version "1.8.0_221""μ κ°μ νμμΌλ‘ λ²μ μ λ³΄κ° νμλ©λλ€.
macOSμμ JDK λ²μ νμΈνκΈ°
- Finderλ₯Ό μ΄κ³ , μλ¨ λ©λ΄μμ "μ΄λ"μ μ νν ν, "μ νΈλ¦¬ν°"λ₯Ό ν΄λ¦ν©λλ€.
- "ν°λ―Έλ"μ λλΈ ν΄λ¦νμ¬ ν°λ―Έλ μ°½μ μ½λλ€.
- ν°λ―Έλ μ°½μ λ€μ λͺ
λ Ήμ΄λ₯Ό μ
λ ₯ν©λλ€.
java -version
- μν° ν€λ₯Ό λλ₯΄λ©΄ μ€μΉλ JDKμ λ²μ μ λ³΄κ° μΆλ ₯λ©λλ€. μλ₯Ό λ€μ΄, "java version "1.8.0_221""μ κ°μ νμμΌλ‘ λ²μ μ λ³΄κ° νμλ©λλ€.
μμ λ°©λ²μ ν΅ν΄ JDK λ²μ μ νμΈν μ μμ΅λλ€. νμΈν JDK λ²μ μ κ°λ°νκ²½ κ΅¬μ± λ° νλ‘μ νΈ μ€μ μ μ°Έκ³ ν μ μμ΅λλ€.
5. JDK PATH νκ²½λ³μ μ€μ νκΈ°
JDKλ₯Ό μ¬μ©νκΈ° μν΄μλ JDK μ€μΉ κ²½λ‘λ₯Ό νκ²½λ³μμ λ±λ‘ν΄μΌ ν©λλ€. μ΄λ₯Ό ν΅ν΄ λͺ
λ Ή ν둬ννΈλ ν°λ―Έλμμ javac
μ java
λͺ
λ Ήμ΄λ₯Ό μ€νν μ μκ² λ©λλ€. μλλ JDK PATH νκ²½λ³μλ₯Ό μ€μ νλ λ°©λ²μ
λλ€.
Windowsμμ JDK PATH νκ²½λ³μ μ€μ νκΈ°
- μμ λ©λ΄λ₯Ό μ΄μ΄ "μ μ΄ν"μ κ²μνμ¬ μ μ΄νμ μ€νν©λλ€.
- μ μ΄νμμ "μμ€ν λ° λ³΄μ"μ μ νν ν, "μμ€ν "μ ν΄λ¦ν©λλ€.
- "κ³ κΈ μμ€ν μ€μ "μ ν΄λ¦ν©λλ€.
- "κ³ κΈ" νμμ "νκ²½λ³μ" λ²νΌμ ν΄λ¦ν©λλ€.
- "μμ€ν λ³μ" μΉμ μμ "μλ‘ λ§λ€κΈ°"λ₯Ό ν΄λ¦ν©λλ€.
- λ³μ μ΄λ¦μ
JAVA_HOME
μ μ λ ₯νκ³ , λ³μ κ°μλ JDK μ€μΉ κ²½λ‘λ₯Ό λΆμ¬λ£μ΅λλ€.
μλ₯Ό λ€μ΄,C:\Program Files\Java\jdk1.8.0_221
μ κ°μ νμμ λλ€. - "νμΈ" λ²νΌμ ν΄λ¦ν©λλ€.
- "μμ€ν λ³μ" μΉμ μμ "Path"λ₯Ό μ ννκ³ , "νΈμ§" λ²νΌμ ν΄λ¦ν©λλ€.
- νΈμ§ μ°½μμ "%JAVA_HOME%\bin"μ μΆκ°ν©λλ€.
μλ₯Ό λ€μ΄, κΈ°μ‘΄ κ²½λ‘μ λ λΆλΆμ;%JAVA_HOME%\bin
μ μΆκ°ν©λλ€. - "νμΈ" λ²νΌμ ν΄λ¦νμ¬ λͺ¨λ μ°½μ λ«μ΅λλ€.
macOSμμ JDK PATH νκ²½λ³μ μ€μ νκΈ°
- Finderλ₯Ό μ΄κ³ , μλ¨ λ©λ΄μμ "μ΄λ"μ μ νν ν, "μ νΈλ¦¬ν°"λ₯Ό ν΄λ¦ν©λλ€.
- "ν°λ―Έλ"μ λλΈ ν΄λ¦νμ¬ ν°λ―Έλ μ°½μ μ½λλ€.
- ν°λ―Έλ μ°½μ λ€μ λͺ
λ Ήμ΄λ₯Ό μ
λ ₯ν©λλ€.
vi ~/.bash_profile
- ν
μ€νΈ μλν° μ°½μ΄ μ΄λ¦¬λ©΄
JAVA_HOME
λ³μλ₯Ό μΆκ°ν©λλ€.
λ€μκ³Ό κ°μ νμμΌλ‘ μΆκ°ν©λλ€.export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home
esc
ν€λ₯Ό λλ₯Έ ν,:wq
λ₯Ό μ λ ₯νμ¬ ν μ€νΈ μλν°λ₯Ό μ’ λ£ν©λλ€.
JDK PATH νκ²½λ³μλ₯Ό μ€μ ν νμλ λͺ λ Ή ν둬ννΈλ ν°λ―Έλμ μ¬μ€ννκ±°λ μλ‘μ΄ μ°½μμ JDK λͺ λ Ήμ΄λ₯Ό μ¬μ©ν μ μμ΅λλ€.
λκΈ