Introduction to Eclipse Ganymede (3.4) - Tutorial

꺼리/공부 2008. 7. 5. 17:12

Eclipse Ganymede 소개 – Tutorial


원저자 : Lars Vogel webmaster@vogella.de

번역 및 추가 수정 : Hans Baek hans.baek@gmail.com



02. 07. 2008.


Abstract


이 문서는 Java IDE로써의 Eclipse의 사용에 관하여 기술할 것입니다. 그 기술 내용은 Eclipse 사용법에 대한 간단한 소개를 포함하고, 프로그래머의 생산성을 향상시켜주는 Eclipse의 기능, 가장 중요한 키보드 단축키의 리스트와 몇 가지 Tip과 Trick에 대하여 논합니다.


이 문서는 원래 Eclipse Europa (3.3)용으로 작성되었고 Eclipse Ganymede (3.4)용으로 upgrade 되었습니다.


Table of contents


  1. 시작하기
    1. 설치
    2. 이클립스 시작하기
    3. Software upgrade와 추가 plug-ins 설치하기
  2. 이클립스 개요
    1. Workspace
    2. 시동시 workspace 설정
    3. 이클립스 사용자 환경 요소
    4. Perspective
    5. View
    6. Editor
    7. Editor / View Comparison
  3. 첫 번째 자바 프로그램 만들기
    1. "Hello Eclipse Ganymede!" console program
  4. Productive Usage of Eclipse
    1. Content assist
    2. .Quick Fix
    3. Important Preference Settings
    4. Task Management
    5. Working Sets
    6. Synchronize package explorer with code display
    7. Code Templates
    8. Identify unused classes / methods
  5. Shortcuts
    1. Java Coding
    2. Editor
    3. Programming
  6. Using jars (libraries)
    1. Adding an external library (.jar) to the class path
    2. Add source code for external jars
    3. Add the API for jar
  7. Debug
  8. Links and Literature
    1. Source Code
    2. Other Eclipse resources


  1. 시작하기
    1. 설치하기

      Eclipse Ganymede를 http://www.eclipse.org/ 에서 다운받아 압축을 해제하여 원하는 디렉토리에 저장합니다. 다른 특별한 설치과정은 필요하지 않습니다.

      이 문서를 작성하고 있는 지금은 Eclipse Ganymede가 첫 발표된 지 채 일주일이 지나지 않은 시점입니다. 여기에서 다운로드 받으면 됩니다.

      Eclipse는 Java 1.5 이상 버전을 필요로 합니다. Java 6 (Java 1.6)이 추천됩니다.

    2. Eclipse 시작하기

      Eclipse 설치 디렉토리에 있는 eclipse.exe를 더블 클릭하여 Eclipse를 시작합니다.

      와 같은 에러가 발생하면 Eclipse 설치 디렉토리에 eclipse.ini를 열어서

      -showsplash

      org.eclipse.platform

      --launcher.XXMaxPermSize

      256M

      -vmargs

      -Dosgi.requiredJavaVersion=1.5

      -Xms40m

      -Xmx512m


      붉은 색으로 되어 있는 부분을 삭제합니다.



      워크스페이스 선택을 위한 화면이 나타납니다. 워크스페이스는 자바 프로젝트를 저장하기 위한 공간입니다. 적당한 폴더를 선택하고 OK 버튼을 누릅니다.



      Eclipse가 시작되고 Welcome 화면이 보입니다.


      Welcome 옆에 조그만 X를 눌러 Welcome 화면을 닫습니다.


    3. 소프트웨어 업데이트와 추가 Plug-ins 설치

    팁) Eclipse Ganymede내의 Update Manager는 완벽하게 새로 작성되었습니다.


    Eclipse는 plug-ins통해 여러 기능을 제공합니다. Eclipse Ganymede Software update manger를 포함하고 있습니다. 이것은 기존의 Plug-ins를 update하고 새로운 plug-ins를 설치하는데 사용되어 집니다. Update manager를 사용하려면 Help > Software Updates menu를 이용하면 됩니다.



    "Updates…" 버튼을 누릅니다. 설치된 plug-ins update가 사용가능한지 여부를 시스템이 검사합니다.


    추가로 소프트웨어를 설치하기 위해 "Available Software" Tab을 선택합니다.

    Ganymede가 제공하는 가능한 모든 pakage를 확인하기 위해서, manage site를 클릭하고 Ganymede Update Site를 선택합니다. 설치 가능한 package들의 목록을 볼 수 있습니다.


  1. Eclipse 개요
    1. 워크스페이스 (Workspace)

    워크스페이스는 여러분이 작업하는 파일 경로의 물리적인 위치를 말합니다. 여러분은 이클립스가 시작될 때 워크스페이스를 선택할 수 있습니다. 혹은 File > Switch Workspace > Others 메뉴를 이용해도 됩니다.


    모든 프로젝트, 소스파일, 이미지 그리고 기타 산출물들이 여러분의 워크스페이스 안에 저장될 것입니다.


    1. Eclipse 시작 시 워크스페이스 정의

    워크스페이스를 미리 정의하기 위해서 여러분은 –data path_to_workspace같은 스타트업 파라메터를 사용할 수 있습니다. 예를 들어 이클립스가 c:\eclipse에 위치하고 워크스페이스를 C:\temp로 설정하고자 한다면 다음과 같이 하면됩니다. 단, 경로명은 "" 안에 넣어야만 하는 것을 주의하십시오. 예를 들면:


    c:\eclipse.exe –data "c:\temp"


    1. Eclipse 사용자 화면 구성요소

    이클립스는 perspective, views, editor들을 제공합니다. View와 Editor들은 perspective로 분류됩니다.


    1. Perspective

    Perspective는 view와 Editor (parts) Set을 위한 Visual Container의 하나입니다. 여러분은 Perspective내의 Layout을 변경할 수 있습니다. (View, Editor 열고 닫기, 크기조절, 위치 변경 등)

    팁) 만일 여러분이 Perspective를 잘못 구성하여 다시 리셋하여 초기 상태로 변경하려면 Window > Reset Perspective… Menu를 이용합니다.


    여러분은 Window > Open Perspective > Other Menu를 통해서 Eclipse의 현재 Perspective를 다른 Perspective로 변경 할 수 있습니다.


    1. View

    View는 주어진 Task에 대한 정보를 제공합니다. View는 일반적으로 정보의 계층을 검색하고, Editor를 열거나, 사용중인 현 Editor에 Property을 찾아보기 위해 사용됩니다.


    1. Editor

    Editor는 가장 시선을 끌게 하는 것으로 여러분의 Application의 주요 내용을 보여줍니다.


    1. Editor / View 비교

    Editor와 View의 주요 차이점은 기술적인 것이 아니라 의미론적인 것입니다. Editor는 만일 이것이 primary task라면 Task를 위해 사용하십시오.


    기술적인 차이점들은 다음과 같습니다.

  • Editor는 perspective들을 공유합니다. 예를 들면, 여러분이 하나의 perspective내에서 어떤 에디터를 닫으면, 그 에디터는 모든 perspective에서도 닫힘니다.
  • 여러분은 그 에디터가 포커스를 가지고 있지 않더라도 Active 에디터가 필요할 것입니다. 이렇게하는 것이 Active 에디터의 Update를 만들고 그 에디터로 쉽게 접근하도록 합니다.

View와 Editor를 설명하기 위해서 E-mail 클라이언트 예를 들겠습니다. E-mail 클라이언트 내에서의 navigation은 View를 통해서 이루어 질 것입니다. 반면에 E-mail을 작성하기 위해서 사용되어지는 Application부분은 Editor를 통해 수행이 될 것입니다.


  1. 첫 번째 Java Program 만들기
    1. "Hello Eclipse Ganymede!" console program

    이어지는 내용은 이클립스를 사용하여 작은 자바 프로그램을 어떻게 만드는지 기술하려고 합니다.


    File > New > Project…를 menu에서 선택합니다.


    Java > Java Project를 선택합니다.


    Project Name으로 FirstGanymede를 입력합니다. "Create separate folders for source and class files"를 선택합니다.

    "Finish" 버튼을 눌러 프로젝트를 생성합니다. 새로운 프로젝트가 생성되었고 마치 폴더처럼 보여집니다.


    "FirstGanymede" 폴더를 열어, src 폴더를 선택합니다. 마우스 오른쪽 버튼을 클릭하고 New > Create Package를 선택합니다. "mypackage"를 생성합니다.


    생성한 package에서 마우스 오른쪽 버튼을 눌러 New > Class를 선택합니다.


    "MyFirstClass"를 생성합니다. "public static void main(String[] args)"를 선택합니다.


    다음과 같이 코드를 작성합니다.

    package mypackage;


    public class MyFirstClass {


        public static void main(String[] args) {

            System.out.println("Hello Eclipse Ganymede!");

        }


    }


    이제 code를 실행합니다.


    실행이 끝나면, 여러분은 Console에서 결과를 확인 할 수 있습니다.


  2. Productive Usage of Eclipse (이클립스를 생산적으로 사용하기)
    1. Content assist

    Content assist는 Ctrl+space버튼에 의해 호출됩니다. 여러분은 입력된 값들의 도움말을 얻을 수 있습니다. 예를 들어, syso를 입력하고 Ctrl+space를 누르면 syso는 System.out.println();으로 변경됩니다.


    Code assistant를 사용 중에 여러분이 "Enter"키를 누르면 커서는 그 라인의 끝으로 이동할 것입니다.


    camelCase 표시법에 기반한 Java type들을 설정하는 것을 허용합니다. 그래서 여러분은 NPE를 입력하고 Ctrl+space를 누르면 이 세 문자를 포함하는 Type들을 얻을 수 있습니다. (예: NullPointerExeption)


    또한, content assistant는 변수들를 정의하는데 사용 가능합니다. 예를 들어 변수로 "private String"을 정의하십시오. 그리고 그 이름을 자동으로 정의하기 위해 Ctrl_space를 누르십시오. 기본값으로 그 type명이 사용될 것입니다.


    1. Quick Fix

    이클립스에 문제가 발생할 때마다 코딩내부에 문제가 있는 부분에 밑줄이 있을 것입니다. 이것을 선택하고 Ctrl+1을 누르십시오.


    예를 들어, "myBoolean = true;"를 입력하십시오. 만일 myBoolean이 아직 정의되지 않았다면, 이클립스는 에러로 그 부분을 강조할 것입니다. 그 변수를 선택하고 Ctrl+1을 누르면 이클립스는 field 혹은 지역 변수를 생성하기 위한 제안을 할 것입니다.


    여러분은 또한 Quick Fix를 메서드의 파라메터를 위한 새로운 지역/Field 변수를 생성하기 위해 사용할 수 있습니다. 메서드의 파라메터를 선택하고 Quick fix를 누르면 "Assign the parameter to new field" 옵션이 나타납니다.


    또한 Quick Fix를 어떤 오브젝트를 위한 메서드를 생성하기 위해 사용할 수도 있습니다. 단지 메서드의 호출을 입력하십시오. 이클립스는 이 메서드가 존재하지 않는지를 표시할 것입니다. Quick Fix를 누르면 이 메서드를 생성하기 위한 옵션을 얻을 수 있습니다.


    또한, Exception을 처리하기 위해 사용할 수도 있습니다. 예를 들어, try/catch block을 생성하거나 메서드에 Exception을 추가 하십시오.


    Quick Fix는 또한 새로운 변수에 문장을 지정하는데 사용 할 수도 있습니다. 여러분이 calculateSomething이라는 integer를 반환하는 a. calculateSomthing(); 이라는 문장을 사용한다고 가정해 봅시다. 그 문장을 선택하고 Quick Fix를 눌러 새로운 지역/Field 변수를 지정할 수 있습니다.


    Quick Fix를 사용하여 Type들의 단어에 대한 맞춤법을 검사 할 수도 있습니다.


    1. Important Preference Settings

    이클립스는 세미콜론 (그리고 다른 요소들)을 자동으로 허용되게 설정할 수 있습니다.


    이크립스는 소스코드를 format하고 저장시에 imports들을 organize하는 것을 허용합니다.


    1. Task Management

    여러분이 //TODO를 코드내에 사용한다면, 이것은 이클립스에게 task를 표시하는 것입니다. 그리고 여러분은 그것을 이클립스의 task view에서 찾을 수 있습니다.


    1. Working Sets

    이클립스에서 일반적인 문제점은 여러분의 워크스페이스에서 데이터가 커지고, 그에 따라 여러분의 워크스페이스가 더 이상 잘 구조화되지 않는 것입니다. 여러분은 Working Set을 사용하여 여러분의 project / data를 구조화하는데 사용할 수 있습니다. 여러분의 Working Set을 설정하려면 Package Explorer > Show > Working Set 을 선택하십시오.


    Working Set을 생성하기 위해 다음 입력 상자의 New 버튼을 누르세요


    다음 화면에서 java를 선택합니다.


    여러분이 보고 싶은 source folder를 선택하고 이름을 정해 줍니다.


    여러분이 보기 원하는 파일들만을 쉽게 보실 수 있습니다.


    1. Synchronize package explorer with code display

    Package Explorer의 오른쪽 상단의 아래화살표 메뉴를 클릭하여 "Link with Editor"를 선택합니다. 메뉴의 화살표가 두 개 그려져있는 버튼을 눌러도 됩니다.

    이것을 선택함으로써, 에디터에서 여러분이 선택한 그 소스파일을 늘 볼 수 있습니다. 예: 여러분이 foo.java에서 작업을 하고 있고, 에디터 내에서 bar.java로 변경한다면 Package explorer에서의 Display가 변경 될 것입니다.


    1. Code Template

    여러분이 자주 반복되는 code나 문서의 한 부분을 입력해야 할 경우 여러분은 autocomplete (Ctrl+space)를 통하여 활성화될 수 있는 Template를 관리 할 수 있습니다.


    예를 들어, 여러분이 이클립스를 XML 파일을 Edit하는데 사용한다고 가정합시다. 그리고 다음 아래와 같은 문장을 다른 파일이름으로 자주 작성해야 만 합니다.

    <para>

        <programlisting>

            <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"

                parse="text" href="../examples/java/wizard/MyPageTwo.java" />

        </programlisting>

    </para>


    이것을 위한 Template을 생성하기 위해서 Window > Preference 메뉴를 선택하고 XML > XML Files > Editor > Templates를 선택합니다.


    New 버튼을 누르고 다음과 같이 template를 생성합니다. ${cursor}는 Template가 적용되고 난 후 커서가 있어야만 하는 위치를 지정합니다.


    이제부터 여러분이 그 키워드를 치고 Ctrl+Space를 누를 때만다 시스템은 추가 택스트를 제안할 것입니다.



    1. Identify unused classes / methods

    class나 그 public methods의 Reference을 확인하기 위해서는, class를 선택하고 마우스 오른쪽 버튼을 누릅니다. 그리고 Reference > Workspace를 선택합니다. 이클립스는 그 class와 그 public method가 사용되었는지 어떻게 사용되었는지를 검사할 것입니다.


  3. 단축키
    1. Java Coding

    Table 1. 중요 단축키

    Shortcut 

    Description 

    Ctrl + 3

    Type shortcut for the command, e.g. njc to create a new Java class or npip to create a new Plug-in project.

    Ctrl + S

    Save

    Alt + Shift + X - J

    Run as Java application

    Shift + F2

    Call the Javadoc for the selected type / class / method  

    Ctrl + Shift + F

    Format source code

    Ctrl + Shift + O

    Organize the imports / Will import the missing imports.  

    Alt + Shift + R

    Refactor / Rename method / variable

    Alt + Left / Alt + right

    Go back to last position/ Go to next position

    Alt + Strg + 0

    Alt + Strg + 7

    } (Easier then AltGr + 0)

    { (Easier then AltGr + 7)


    1. Editor

    Table 2. 중요 단축키

    Shortcut 

    Description 

    Ctrl + Alt + Down

    Copy line

    Ctrl + D

    Deletes line

    Pos1

    Line Start

    End

    Line End

    Ctrl + Q

    Last edited position

    Ctrl + M

    Full screen mode for java coding and back


    Table 3. Search

    Shortcut 

    Description 

    Alt+Left Alt-Right

    Go to prev. / next editor position in history

    Ctrl + Mouseclick on a variable

    Go to declaration of this variable

    Ctrl + .

    Go to previous / next problem

    F3 on a variable

    Go to Declaration of this variable

    Strg + J , Strg +k

    Incremental search, find next


    Table 4. Selecting

    Shortcut 

    Description 

    Ctrl + Shift + Left

    Select previous word

    Ctrl + Shift + Right

    Select next word

    Alt + Shift + Left

    Select previous element

    Alt + Shift + Right

    Select previous element

    Ctrl + Entf

    Delete next element

    Ctrl + Left

    Move one element to the left

    Ctrl + Right

    Move one element to the right


    1. Programming

    Table 5. 중요 단축키

    Shortcut 

    Description 

    Ctrl F11

    Run last launched

    F12

    Focus to editor window

    Ctrl + Shift + P

    Go to matching bracket

    Alt + Shift + Z

    Surround block with try and catch


    Table 6. Debugging

    Shortcut 

    Description 

    Cntl + Shift + B

    Toggle breakpoint

    F11

    Debug last run

    F5

    Single Step (Down)

    F6

    Single Step (Jump)

    F7

    Up


  4. Using jars (libraries)
    1. Adding an external library (.jar) to the class path

    외부 jar들을 여러분의 프로젝트에 추가하기 위해서는 다음과 같이 합니다.

  • lib라 불리는 폴더를 새로 생성하거나 기존의 폴더를 사용합니다.
  • Import > General > File System 에서 jar 파일을 선택합니다.
  • 여러분의 프로젝트를 선택하고, 마우스 오른쪽 버튼을 눌러 Property를 선택합니다. Java Build Path를 선택하고 Libraries탭을 선택합니다. "Add JARs…" 버튼을 클릭하여 jar파일을 선택합니다. Order and Export탭을 선택하고 여러분의 jar파일을 포함시키고 충돌이 발생하지 않도록 위치를 변경합니다.

다음 예는 servlet-api.jar가 프로젝트에 추가되었을 경우의 결과가 어떻게 되는지를 보여줍니다.


  1. Add source code for external jars

라이브러리에 포함되어 있는 어떤 Type의 source를 확인하기 위해 여러분은 source archive나 source folder을 그 라이브러리에 붙일 수 있습니다. 에디터는 재번역된 코드 대신 그 source를 보여줄 것입니다. Source 첨부 설정은 또한 디버거를 통한 source level stepping을 허용합니다.


Source Attachment 화면은 Projects > Properties > Java Build Path Menu를 통해 접근 가능합니다. Libraries 탭에서 라이브러리 노드를 확장하고 Source Attachment Attribute를 선택하고 Edit를 누릅니다.


Location path에 소스를 포함하는 archive나 폴더의 패스를 입력합니다.


  1. Add the API for jar

jar의 API를 다운로드 받아 여러분의 파일시스템에 저장합니다.


Java Build Path 화면을 Open합니다. Libraries 탭에서 library 노드를 확장하고 Javadoc location attribute를 선택하고 Edit 버튼을 클릭합니다.


  1. Debug

Run > Debug를 선택하여 여러분의 Application을 디버그 하십시오. 브레이크 포인트를 설정하기 위해서 좌측의 작은 칼럼을 오른쪽 마우스 클릭하여 Toggle Breakpoint를 선택합니다. 그 이후에 여러분은 예를 들어, 브레이크포인트가 토글되어야만 할 때의 제한 조건을 설정하기 위해 브레이크포인트의 Properties을 선택할 수 있습니다. 여기 그 제한의 예로 브레이크포인트가 10ht(Hit count)때에 동작되게 하거나, 여러분이 Conditional Expression을 입력하여 제한 할 수도 있습니다.


  1. Links and Literature
    1. Source Code

    http://www.vogella.de/code/codeeclipse.html Source code of Examples


    1. Other Eclipse resource

    http://www.eclipse.org Eclipse.org Homepage

    http://www.vogella.de Articles about Java and Eclipse

    http://www.vogella.de/articles/Eclipse/article.html Using Eclipse as IDE - Tutorial

    http://www.vogella.de/articles/RichClientPlatform/article.html Eclipse Rich Client Platform Tutorial - A Hands-on-Guide

    http://www.vogella.de/articles/EclipseMicrosoftIntegration/article.html Eclipse Microsoft Integration - Tutorial

    http://www.vogella.de/articles/EclipseCodeAccess/article.html A guide to access the Eclipse Sources

    http://www.vogella.de/articles/EclipseJFreeChart/article.html Using JFreeChart with an Eclipse RCP application.

    http://www.vogella.de/articles/EclipseJFaceTable/article.html Using the JFace 3.3 API to create a table in an Eclipse RCP application.

    http://www.vogella.de/articles/EclipseDataToolsPlatform/article.html Database Access with the Eclipse Data Tool Platform (DTP) - Tutorial

    http://www.vogella.de/articles/EclipseTPTP/article.html Tutorial for testing Web applications with the Eclipse Test and Performance Tools Platform (TPTP)

    http://www.vogella.de/articles/EclipseWTP/article.html Using Eclipse WTP to build servlets, manage database access for webapplication and to handle webservices.

    http://www.vogella.de/articles/EclipseEMF/article.html Building a HTML Website with the Eclipse Modeling Framework (EMF) and Java Emitter Template (JET) - Tutorial










: