1. μ΄ν΄λ¦½μ€λ?
μ΄ν΄λ¦½μ€λ μλ°λ₯Ό λΉλ‘―ν λ€μν νλ‘κ·Έλλ° μΈμ΄λ₯Ό κ°λ°ν μ μλ ν΅ν© κ°λ° νκ²½(IDE)μ λλ€. μ΄ν΄λ¦½μ€λ μ€ν μμ€λ‘ κ°λ°λμμΌλ©°, μλ° κ°λ°μλ€μ μν κ°λ ₯ν λκ΅¬λ‘ μλ €μ Έ μμ΅λλ€.
1.1 μ΄ν΄λ¦½μ€μ νΉμ§
μ΄ν΄λ¦½μ€λ λ€μν νΉμ§μ κ°κ³ μμ΄ λ§μ κ°λ°μλ€μκ² μΈκΈ°λ₯Ό λκ³ μμ΅λλ€. κ·Έ μ€ μΌλΆλ λ€μκ³Ό κ°μ΅λλ€:
- λ€μν μΈμ΄ μ§μ: μ΄ν΄λ¦½μ€λ μλ°λ₯Ό λΉλ‘―ν C/C++, νμ΄μ¬, PHP λ± λ€μν νλ‘κ·Έλλ° μΈμ΄λ₯Ό μ§μν©λλ€.
- νλ¬κ·ΈμΈ μμ€ν : μ΄ν΄λ¦½μ€λ κ°λ°μλ€μ΄ νμμ λ°λΌ μμ λ€μ μꡬ μ¬νμ λ§κ² κΈ°λ₯μ νμ₯ν μ μλ νλ¬κ·ΈμΈ μμ€ν μ μ 곡ν©λλ€.
- λλ²κΉ λ° μ½λ λΆμ λꡬ: μ΄ν΄λ¦½μ€λ κ°λ ₯ν λλ²κΉ κΈ°λ₯κ³Ό μ½λ λΆμ λꡬλ₯Ό μ 곡νμ¬ κ°λ°μλ€μ΄ μμ€ μ½λλ₯Ό ν¨μ¨μ μΌλ‘ κ΄λ¦¬νκ³ λ¬Έμ λ₯Ό μ μνκ² ν΄κ²°ν μ μλλ‘ λμμ€λλ€.
1.2 μ΄ν΄λ¦½μ€μ λ€μ΄λ‘λ
μ΄ν΄λ¦½μ€λ 곡μ μΉμ¬μ΄νΈ(https://www.eclipse.org)μμ λ€μ΄λ‘λν μ μμ΅λλ€. μ¬κΈ°μλ μ°λΆν¬μμμ μ€μΉ λ°©λ²μ λν΄ λ€λ£° κ²μ΄λ―λ‘, μ°λΆν¬μ© μ΄ν΄λ¦½μ€λ₯Ό λ€μ΄λ‘λν΄μΌ ν©λλ€. 곡μ μΉμ¬μ΄νΈμμλ μ°λΆν¬μ© μ΄ν΄λ¦½μ€ λ²μ μ μ 곡νκ³ μμΌλ―λ‘, ν΄λΉ λ²μ μ μ ννμ¬ λ€μ΄λ‘λ λ°μ μ μμ΅λλ€.
λ€μ νλͺ©μμλ μ°λΆν¬μμμ μ€μΉ λ°©λ²μ λν΄ μμΈν μμλ³΄κ² μ΅λλ€.
2. μ°λΆν¬μμμ μ€μΉ λ°©λ²
μ΄ν΄λ¦½μ€λ₯Ό μ°λΆν¬μμ μ€μΉνκΈ° μν΄ λ€μ λ¨κ³λ₯Ό λ°λΌ μ§νν μ μμ΅λλ€:
μ°λΆν¬μ ν°λ―Έλμ μ½λλ€.
λ€μ λͺ λ Ήμ μ¬μ©νμ¬ OpenJDK λ°νμ νκ²½μ μ€μΉν©λλ€. μ΄ λͺ λ Ήμ μ΄ν΄λ¦½μ€λ₯Ό μ€ννλ λ° νμν μλ° λ°νμ νκ²½μ μ 곡ν©λλ€.
sudo apt-get install openjdk-8-jre
μ΄μ λ€μ λͺ λ Ήμ μ¬μ©νμ¬ μ΄ν΄λ¦½μ€λ₯Ό λ€μ΄λ‘λν©λλ€. μ΄ λͺ λ Ήμ μ΄ν΄λ¦½μ€ μ€μΉ νμΌμ λ€μ΄λ‘λ λ°μ μ€μΉν μ μλ λλ ν λ¦¬λ‘ μ΄λν©λλ€.
cd ~/Downloads wget https://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/2021-06/R/eclipse-java-2021-06-R-linux-gtk-x86_64.tar.gz&r=1
λ€μ΄λ‘λκ° μλ£λλ©΄ λ€μ λͺ λ ΉμΌλ‘ μ΄ν΄λ¦½μ€λ₯Ό μμΆ ν΄μ ν©λλ€.
tar -xvf eclipse-java-2021-06-R-linux-gtk-x86_64.tar.gz
μ΄μ μ΄ν΄λ¦½μ€λ₯Ό μ€μΉν λλ ν λ¦¬λ‘ μ΄λν©λλ€.
cd eclipse
μ΄νμλ
./eclipse
λͺ λ Ήμ μ¬μ©νμ¬ μ΄ν΄λ¦½μ€λ₯Ό μ€νν μ μμ΅λλ€../eclipse
μ΄μ μ΄ν΄λ¦½μ€κ° μ€μΉλμκ³ μ€ν μ€λΉκ° μλ£λμμ΅λλ€. μ΄μ μ΄ν΄λ¦½μ€λ₯Ό μ€ννμ¬ κ°λ° μμ μ μμν μ μμ΅λλ€.
3. μ΄ν΄λ¦½μ€μ κΈ°λ₯κ³Ό μ₯μ
μ΄ν΄λ¦½μ€λ κ°λ ₯ν ν΅ν© κ°λ° νκ²½(IDE)μΌλ‘ λ€μν κΈ°λ₯κ³Ό μ₯μ μ μ 곡ν©λλ€. μ¬κΈ°μλ λ€μκ³Ό κ°μ ν΅μ¬μ μΈ κΈ°λ₯κ³Ό μ₯μ μ΄ ν¬ν¨λ©λλ€:
3.1 λ€μν μΈμ΄ μ§μ
μ΄ν΄λ¦½μ€λ μλ°λ₯Ό λΉλ‘―ν λ€μν νλ‘κ·Έλλ° μΈμ΄λ₯Ό μ§μν©λλ€. λ°λΌμ μ¬λ¬ μΈμ΄λ‘ νλ‘μ νΈλ₯Ό κ°λ°νκ³ κ΄λ¦¬ν μ μμ΅λλ€. μ΄λ₯Ό ν΅ν΄ κ°λ°μλ ν κ°μ§ ν΄λ§ μ¬μ©νμ¬ μ¬λ¬ μΈμ΄λ‘ κ°λ° μμ μ μνν μ μμ΅λλ€.
3.2 νλ¬κ·ΈμΈ μμ€ν
μ΄ν΄λ¦½μ€λ νλ¬κ·ΈμΈ μμ€ν μ μ 곡νμ¬ κ°λ°μλ€μ΄ νμμ λ°λΌ κΈ°λ₯μ νμ₯ν μ μμ΅λλ€. μ΄ νλ¬κ·ΈμΈμ μλ° κ°λ° λꡬλΆν° μΉ κ°λ°, λ°μ΄ν°λ² μ΄μ€ κ΄λ¦¬ λ± λ€μν μμ μμμμ μ¬μ©ν μ μμ΅λλ€. λν, κ°λ°μλ€μ μμ μ νλ¬κ·ΈμΈμ μμ±νμ¬ μ΄ν΄λ¦½μ€μ μΆκ°ν μλ μμ΅λλ€.
3.3 λλ²κΉ λ° μ½λ λΆμ λꡬ
μ΄ν΄λ¦½μ€λ κ°λ ₯ν λλ²κΉ λꡬλ₯Ό μ 곡νμ¬ κ°λ°μλ€μ΄ νλ‘κ·Έλ¨μ μ€ν μ€μ λ°μνλ λ¬Έμ λ₯Ό μ μνκ² λΆμνκ³ ν΄κ²°ν μ μκ² λμμ€λλ€. λν, μ½λ λΆμ λꡬλ₯Ό ν΅ν΄ κ°λ°μλ μμ€ μ½λμ μ€λ₯λ₯Ό 미리 κ²μΆνκ³ νμ§μ ν₯μμν¬ μ μμ΅λλ€.
3.4 νλ‘μ νΈ κ΄λ¦¬ κΈ°λ₯
μ΄ν΄λ¦½μ€λ νλ‘μ νΈ κ΄λ¦¬ κΈ°λ₯μ μ 곡νμ¬ κ°λ°μλ€μ΄ νλ‘μ νΈλ₯Ό ν¨μ¨μ μΌλ‘ κ΄λ¦¬ν μ μμ΅λλ€. κ°λ°μλ€μ μμ€ μ½λμ λ²μ κ΄λ¦¬, μ΄μ νΈλνΉ, νλ‘μ νΈμ λΉλ λ° λ°°ν¬ λ± λ€μν μμ μ μ΄ν΄λ¦½μ€μμ μνν μ μμ΅λλ€. μ΄λ₯Ό ν΅ν΄ κ°λ°μλ νμκ³Ό νμ νκ³ νλ‘μ νΈμ μ§ν μν©μ μ€μκ°μΌλ‘ λͺ¨λν°λ§ν μ μμ΅λλ€.
3.5 μλμμ± λ° μ½λ μμ μ§μ
μ΄ν΄λ¦½μ€λ μλμμ± κΈ°λ₯μ μ 곡νμ¬ κ°λ°μλ€μ΄ μ½λ μμ± μλλ₯Ό λμΌ μ μμ΅λλ€. λν, μ½λ μμ μ§μμ ν΅ν΄ κ°λ°μλ μΌκ΄λ μ½λ μ€νμΌμ μ μ§ν μ μκ³ κ°λ μ±μ ν₯μμν¬ μ μμ΅λλ€.
μ΄ν΄λ¦½μ€λ μμ κ°μ κΈ°λ₯κ³Ό μ₯μ μ ν΅ν΄ κ°λ°μλ€μ΄ ν¨μ¨μ μΌλ‘ κ°λ° μμ μ μνν μ μλλ‘ λμμ€λλ€. λ°λΌμ λ§μ κ°λ°μλ€μ΄ μ΄ν΄λ¦½μ€λ₯Ό μ νΈνκ³ μ¬μ©νκ³ μμ΅λλ€.
4. μ΄ν΄λ¦½μ€λ₯Ό μ¬μ©νμ¬ κ°λ° νκ²½ ꡬμΆνκΈ°
μ΄ν΄λ¦½μ€λ₯Ό μ¬μ©νμ¬ κ°λ° νκ²½μ ꡬμΆνλ λ¨κ³λ λ€μκ³Ό κ°μ΅λλ€:
4.1 μ΄ν΄λ¦½μ€ λ€μ΄λ‘λ λ° μ€μΉ
μ΄ν΄λ¦½μ€ 곡μ μΉμ¬μ΄νΈ(https://www.eclipse.org)μ μ μν©λλ€.
μ΄μ 체μ μ λ§λ μ΄ν΄λ¦½μ€ λ€μ΄λ‘λ λ§ν¬λ₯Ό ν΄λ¦ν©λλ€. μλ₯Ό λ€μ΄, "Eclipse IDE for Java Developers"λ₯Ό μ ννλ©΄ Java κ°λ°μλ₯Ό μν μ΄ν΄λ¦½μ€ λ²μ μ λ€μ΄λ‘λν μ μμ΅λλ€.
λ€μ΄λ‘λν νμΌμ μ€ννμ¬ μ€μΉ κ³Όμ μ μμν©λλ€. μΌλ°μ μΌλ‘ μ€μΉ λ§λ²μ¬λ₯Ό λ°λΌκ°λ©΄ λ©λλ€.
4.2 μ΄ν΄λ¦½μ€ μ€ν λ° νλ‘μ νΈ μμ±
μ΄ν΄λ¦½μ€λ₯Ό μ€νν©λλ€.
"Welcome to Eclipse" νλ©΄μμ "Workbench"λ₯Ό μ ννμ¬ μ΄ν΄λ¦½μ€ μμ 곡κ°μ μ½λλ€.
"File" λ©λ΄μμ "New"λ₯Ό μ ννκ³ μνλ νλ‘μ νΈ μ νμ μ νν©λλ€. μλ₯Ό λ€μ΄, "Java Project"λ₯Ό μ ννμ¬ μλ‘μ΄ μλ° νλ‘μ νΈλ₯Ό μμ±ν μ μμ΅λλ€.
νλ‘μ νΈ μ΄λ¦μ μ λ ₯νκ³ "Finish"λ₯Ό ν΄λ¦νμ¬ νλ‘μ νΈλ₯Ό μμ±ν©λλ€.
4.3 μ½λ μμ± λ° λλ²κΉ
νλ‘μ νΈλ₯Ό μμ±ν νμλ ν΄λΉ νλ‘μ νΈ λ΄μμ μ½λ μμ±μ μμν μ μμ΅λλ€.
Java νλ‘μ νΈμ κ²½μ°, "src" ν΄λμμ μλ‘μ΄ Java ν΄λμ€ νμΌμ μμ±νκ³ μ½λλ₯Ό μμ±ν©λλ€.
μ½λ μμ± μ€μλ μ΄ν΄λ¦½μ€μ μλμμ± κΈ°λ₯μ νμ©ν μ μμ΅λλ€. νμν λ©μλλ ν΄λμ€ μ΄λ¦μ μΌλΆλ₯Ό μ λ ₯νκ³ "Ctrl + Space"λ₯Ό λλ₯΄λ©΄ μλμμ± μ μμ΄ νμλ©λλ€.
μ½λ μμ± νμλ λλ²κΉ μ ν΅ν΄ νλ‘κ·Έλ¨μ λμμ κ²μ¬ν μ μμ΅λλ€. λΈλ μ΄ν¬ ν¬μΈνΈλ₯Ό μ€μ νκ³ λλ²κΉ λͺ¨λλ‘ μ€ννμ¬ μ½λμ μ€ν μ€μ λ³μ κ°μ νμΈνκ±°λ λ¬Έμ λ₯Ό μ§λ¨ν μ μμ΅λλ€.
4.4 νλ‘μ νΈ κ΄λ¦¬ λ° νμ
μ΄ν΄λ¦½μ€λ νλ‘μ νΈ κ΄λ¦¬λ₯Ό μν λ€μν κΈ°λ₯μ μ 곡ν©λλ€. μμ€ μ½λμ λ²μ κ΄λ¦¬, μ΄μ νΈλνΉ, λΉλ λ° λ°°ν¬ λ±μ μμ μ μ΄ν΄λ¦½μ€μμ μ§νν μ μμ΅λλ€.
νλ‘μ νΈμ νμ μ μν΄ μ΄ν΄λ¦½μ€λ λ€μμ κ°λ°μκ° λμΌν νλ‘μ νΈμ μ°Έμ¬ν μ μλλ‘ μ§μν©λλ€. μ½λ λ³κ²½ λ΄μμ 곡μ νκ³ λ¦¬λ·°νλ λ±μ μμ μ ν¨μ¨μ μΌλ‘ μνν μ μμ΅λλ€.
μμ λ¨κ³λ₯Ό λ°λΌ μ΄ν΄λ¦½μ€λ₯Ό μ¬μ©νμ¬ κ°λ° νκ²½μ ꡬμΆν μ μμ΅λλ€. μ΄ν΄λ¦½μ€λ λ€μν κΈ°λ₯κ³Ό νΈμμ±μ μ 곡νμ¬ κ°λ°μκ° ν¨μ¨μ μΌλ‘ μμ μ μνν μ μλλ‘ λμμ€λλ€.
5. μ΄ν΄λ¦½μ€λ₯Ό ν¨κ³Όμ μΌλ‘ νμ©νλ λ°©λ²
μ΄ν΄λ¦½μ€λ₯Ό ν¨κ³Όμ μΌλ‘ νμ©νκΈ° μν΄ λ€μκ³Ό κ°μ λ°©λ²μ λ°λ₯Ό μ μμ΅λλ€:
5.1 λ¨μΆν€ νμ©
- μ΄ν΄λ¦½μ€λ λ€μν λ¨μΆν€λ₯Ό μ 곡νμ¬ μμ μ λΉ λ₯΄κ³ ν¨μ¨μ μΌλ‘ μνν μ μμ΅λλ€. μμ£Ό μ¬μ©νλ κΈ°λ₯μ λν λ¨μΆν€λ₯Ό μ΅νλλ©΄ κ°λ° μλλ₯Ό ν¬κ² ν₯μμν¬ μ μμ΅λλ€.
- "Ctrl + Space"λ₯Ό μ¬μ©νμ¬ μλμμ± κΈ°λ₯μ νμ±νν μ μκ³ , "Ctrl + Shift + O"λ₯Ό μ¬μ©νμ¬ import λ¬Έμ μλμΌλ‘ μ 리ν μ μμ΅λλ€.
- ν΄λΉ μΈμ΄μ λ§λ μ½λ μμ± κ΄λ ¨ λ¨μΆν€λ₯Ό μ°Ύμ νμ΅νκ³ μ¬μ©νλ κ²μ΄ μ’μ΅λλ€.
5.2 νλ¬κ·ΈμΈ νμ©
- μ΄ν΄λ¦½μ€λ λ€μν νλ¬κ·ΈμΈμ μ 곡νμ¬ μμ μμμ νμ₯ν μ μμ΅λλ€. μμ μκ² νμν κΈ°λ₯μ μν νλ¬κ·ΈμΈλ€μ μ€μΉνκ³ νμ©ν μ μμ΅λλ€. μλ₯Ό λ€μ΄, μΉ κ°λ°μ μν νλ¬κ·ΈμΈμΈ "Web Tools Platform"μ μ€μΉνλ©΄ μΉ νλ‘μ νΈλ₯Ό ν¨κ³Όμ μΌλ‘ κ°λ°ν μ μμ΅λλ€.
5.3 λλ²κΉ λꡬ νμ©
- μ΄ν΄λ¦½μ€λ κ°λ ₯ν λλ²κΉ λꡬλ₯Ό μ 곡ν©λλ€. λ²κ·Έ λ° μ€λ₯λ₯Ό μ μνκ² λΆμνκ³ ν΄κ²°νκΈ° μν΄ λλ²κΉ λͺ¨λλ‘ μ½λλ₯Ό μ€ννκ³ λ³μμ κ°μ νμΈν μ μμ΅λλ€. λΈλ μ΄ν¬ ν¬μΈνΈλ₯Ό μ€μ νμ¬ μ½λμ μ€ν νλ¦μ κ΄μ°°νκ³ λ¬Έμ λ₯Ό μ§λ¨ ν μλ μμ΅λλ€.
5.4 μ½λ μμ± λμ°λ―Έ νμ©
- μ΄ν΄λ¦½μ€λ μ½λ μμ±μ μ§μνκΈ° μν΄ λ€μν λμ°λ―Έ κΈ°λ₯μ μ 곡ν©λλ€. μλ₯Ό λ€μ΄, μ½λ μλ μμ±, μ½λ μμ μ§μ, μ½λ ν νλ¦Ώ λ° μ€λν« λ±μ νμ©νμ¬ μΌκ΄μ± μλ μ½λλ₯Ό μμ±ν μ μμ΅λλ€. μ΄λ₯Ό ν΅ν΄ μ½λμ κ°λ μ±κ³Ό νμ§μ ν₯μμν¬ μ μμ΅λλ€.
5.5 νλ‘μ νΈ κ΄λ¦¬ λ° νμ
- μ΄ν΄λ¦½μ€λ νλ‘μ νΈ κ΄λ¦¬λ₯Ό μν λ€μν κΈ°λ₯μ μ 곡ν©λλ€. μλ₯Ό λ€μ΄, μμ€ μ½λμ λ²μ κ΄λ¦¬, μ΄μ νΈλνΉ, λΉλ λ° λ°°ν¬ λ±μ μ΄ν΄λ¦½μ€μμ μνν μ μμ΅λλ€.
- νμ μ μν΄ μ΄ν΄λ¦½μ€λ λ€μμ κ°λ°μκ° λμΌν νλ‘μ νΈμ μ°Έμ¬ν μ μλλ‘ μ§μν©λλ€. λ€λ₯Έ κ°λ°μμ μ½λ λ³κ²½ λ΄μμ 곡μ νκ³ μ½λ 리뷰λ₯Ό μ§νν μ μμ΅λλ€.
μμ λ°©λ²λ€μ νμ©νμ¬ μ΄ν΄λ¦½μ€λ₯Ό ν¨κ³Όμ μΌλ‘ νμ©ν μ μμ΅λλ€. κ°μΈμ μΌλ‘ νμν κΈ°λ₯λ€μ μ°Ύμλ³΄κ³ μ¬μ©ν΄λ³΄λ©΄μ μμ ν¨μ¨μ κ·Ήλνν μ μμ΅λλ€.
λκΈ