JDT 기본 사용법 DarkKaiser, 2007년 7월 7일2023년 9월 5일 에디터 기본 사용자 인터페이스 에디터의 맨 왼쪽에는 마커바(marker bar)가 있는데 여기에 컴파일 에러, 경고, 북마크, 태스크, 오버라이드(override)된 메서드 등에 대한 아이콘이 표시된다. 현재 선택된 코드 블럭 영역은 마커바 상에서 진하게 표시된다. 컴파일 에러나 경고는 마커바에 표시도리 뿐만 아니라 에디터에도 표시된다. 컴파일 에러가 있는 곳에는 빨간색 밑줄이, 경고가 있는 곳에는 노란색 밑줄이 표시된다. 마커바의 바로 오른쪽 옆에 Quick diff ruler가 있어 가장 최근의 저장 상태와 다른 부분을 표시해 준다. 파일을 저장하면 표시가 없어지고, 편집하면 다시 나타나고 있다. 파일을 저장하기 전에 수정한 부분을 확인하는 데 사용할 수 있다. Quick diff ruler 바로 옆에는 코드를 펼치고 접을 수 있는 아이콘을 표시하는 바가 있다. ‘-‘ 모양의 아이콘은 코드가 펼쳐져 있음을 나타내고, ‘+’ 모양의 아이콘은 코드가 접혀 있음을 나타낸다. ‘+’, ‘-‘ 모양의 아이콘을 클릭해 해당 코드 블록을 저ㅏㅂ거나 펼칠 수 있다. 에디터의 오른쪽 스크롤바 옆에는 Overview ruler가 있는데, 현재 편집중인 파일에서 컴파일 에러, 경고, 북마크, 태스크 등의 위치를 나타내는 표시가 있다. 빨간색은 컴파일 에러, 노란색은 경고, 초록색은 북마크, 파란색은 태스크를 나타낸다.코드 어시스트 에디터에서 자바 코드를 입력하다가 Ctrl+Space 키를 누르면 현재 컨텍스트에서 입력하던 내용을 완성하는 데 필요한 코드(메서드, 코드 템플릿 등)가 팝업에 표시되며, 팝업에서 하나를 선택하고 Enter 키를 누르면 선택한 내용이 에디터에 입력된다. 이클립스에는 많은 템플릿이 미리 정의되어 있으며, 템플릿에 대한 설정은 Preferences 다이얼로그의 Java>Editor>Templates 페이지에서 볼 수 있고, 여기서 새로운 템플릿을 정의하거나 기존의 템플릿을 편집, 제거할 수 있다.빠른 수정(quick fix) 코드에 에러가 있는 경우 에디터에서 해당 에러 부분에 빨간색 밑줄이 표시되고, 에디터의 왼쪽에 있는 마커바에도 에러를 나타내는 아이콘이 표시된다. 마커바에 표시된 에러 아이콘 중에서 빨간색 x표 옆에 전구 모양의 아이콘은 해당 에러를 수정하기 위해 빠른 수정 기능을 사용할 수 있음을 나타낸다. 빨간색 x표 아이콘만 있는 경우는 빠른 수정을 사용할 수 없다. 빠른 수정이 가능한 에러일 경우, 에러가 발생한 부분에 커서를 놓은 다음 Ctrl+1 키를 누르면 이클립스가 해당 에러를 제거할 수 있는 방법을 몇 가지 제안한다.Quick Type Hierarchy 에디터에서 메서드나 타입, 패키지를 선택하고 Ctrl+T를 누르면 Quick Type Hierarchy 뷰가 나타난다. 타입을 선택한 경우 해당 타입에 대한 상속 구조가 표시되고, 메서드를 선택한 경우 메서드를 구현한 타입의 상속 구조가 표시된다. 팝업 뷰가 표시된 상태에서 ?CTrl+T를 누르면 수퍼타입/서브타입 구조가 토글된다.Quick Outline 에디터에서 Ctrl+O를 누르면 Quick Outline 뷰가 표시된다. 표시되는 내용은 기본적으로 Outline 뷰와 같지만, 소스 코드를 편집하는 도중에 빠르게 볼 수 있다. 팝업 위쪽에 키를 입력할 수 있는 부분이 있는데, 이를 통해 원하는 요소만을 보이게 할 수 있다. 가령 여기에 s를 입력하면 s로 시작하는 메서드만 표시된다. 소스 코드를 편집하면서 마우스와 키보드를 왔다 갔다 할 필요없이 특정 메서드를 빠르게 찾아갈 수 있으므로 매우 편리하다.소스 코드 네비게이션 에디터에서 소스 코드를 살펴보다가 특정 코드 블록에서 사용하는 메서드나 필드, 클래스의 정의를 보고 싶으면 그 위에 커서를 놓고 F3 키를 누르면 된다. 이클립스는 해당 요소를 찾아 에디터에 표시해 주고 해당 요소를 하이라이트해 준다. 원래의 위치로 돌아오려면 Alt+왼쪽 화살표 키를 누르면 된다. 다시 보고 싶으면 Alt+오른쪽 화살표 키를 누른다. 에디터에서 자바 요소 위에 마우스를 올려놓은 상태에서 Ctrl 키를 누르면 위의 그림과 같이 해당 요소가 하이퍼링크 모양으로 바뀌는데, 이때 마우스를 클릭하면 해당 요소로 이동할 수 있다. 필드나 메서드, 클래스 등에 모두 적용할 수 있다.코드 생성 메뉴바나 에디터의 컨텍스트 메뉴에서 Source 항목을 펼쳐 보면 소스 코드와 관련된 기능에 어떤 것들이 있는지 볼 수 있다. 이중 다음 항목은 소스 코드 생성에 관한 것들이다. Override/Implement Methods 수퍼 타입에 정의된 메서드를 오버라이드하거나 구현할 필요가 있을 때 이에 대한 메서드 스텁을 만들어 준다. Generate Getters and Setters 필드에 대한 get/set 메서드를 자동으로 만들어 준다. Add Constructor from Superclass 클래스를 만들 때 수퍼클래스에 있는 생성자를 그대로 만들어 주고 싶을 때도 있는데, 이럴 때 사용할 수 있다. Generate Constructor using Fields 클래스가 포함하는 필드를 이용해 생성자를 만들어 준다. Add Comment 클래스나 메서드, 필드에 대한 javadoc을 생성해 준다. 메서드의 경우 파라미터에 대한 javadoc 태그도 생성해 준다. 이클립스가 자동 생성해 주는 코드는 코드 텝플릿에 정의된 형식을 따른다. 코드 텝플릿데 대한 설정은 Preferences 다이얼로그의 Java>Code Style>Code Templates 페이지에서 설정한다. 각 항목의 내용은 Pattern에서 확인할 수 있고, Edit 버튼을 눌러 수정할 수 있다. 예를 들어 새로운 Java 파일을 만들 때 붙는 주석을 수정하려면, New Java files 항목을 편집한다. 작업 모음 복잡한 프로젝트에서 어떤 기능과 관련된 작업을 하는데, 이 작업은 수백, 수천개의 소스 파일 중에서 몇몇 소스 파일에만 관련이 있다고 하자. 이런 경우에 작업 모음을 이용하면 현재의 작업과 관련 없는 소스 파일은 보이지 않게 하고 작업에 직접 관련이 있는 소스 파일만 보이게 할 수 있다. Pakcage Explorer의 드랍다운 메뉴에서 Select Working Sets을 선택하면 작업 모음을 선택하는 다이얼로그가 뜬다. 여기서 다이얼로그의 아랫 부분에 있는 New 버튼을 누르면 새로운 작업 모음을 정의할 수 있다. 작업 모음이란 간단히 말하면 작업에 필요한 리소스의 집합을 정의한 것이다. 따라서 작업 모음을 정의할 때는 해당 작업에 필요한 리소스만을 선택해 정의하면 된다. 작업 모음을 정의하면 드랍다운 메뉴에 작업 모음 메뉴가 생겨 나중에도 쉽게 선택할 수 있다. 작업 모음을 해제하려면 드랍다운 메뉴에서 Deselect Working Sets을 선택하면 된다. 또한 드랍다운 메뉴의 Show>Working Sets를 선택하면 미리 정의한 작업 모음별로 리소스를 볼 수도 있다. 이 상태에서는 Package Explorer에 여러 개의 적업 모음을 보이게 할 수도 있다. 프로젝트 별로 보이는 상태로 돌아가려면 드랍다운 메뉴에서 Show>Projects를 선택하면 된다. 작업 모음과는 개념이 좀 다르긴 하지만 특정 하위 폴더만을 보고 싶을 때는 Go Into를 이용할 수도 있다. Go Into는 선택한 폴더 내의 리소스만을 보여주는 기능으로, Package Explorer에서 프로젝트나 패키지를 선택하고 컨텍스트 메뉴에서 Go Into를 선택해 이용할 수 있다.로컬 히스토리 파일을 수정한 후 저장하면 그 내역이 로컬 히스토리에 저장된다. 따라서 어떤 파일의 현재 상태와 수정하기 전의 상태를 비교하거나, 예전 상태로 복구할 수 있다. 로컬 히스토리는 Package Explorer의 컨텍스트 메뉴에서 Compare With>Local History, Replace With>Local History, Restore From Local History 메뉴를 통해 이용할 수 있다. 비교는 로컬 히스토리와만 할 수 있는 것이 아니다. Package Explorer에서 두 개의 프로젝트나 패키지 또는 파일을 선택하고 컨텍스트 메뉴에서 Compare With>Each Other를 선택하면 선택한 두 리소스에 대해 비교할 수도 있다.코드 스타일 Preference 다이얼로그의 Java>Code Style>Formatter 페이지에서 코드 스타일 프로파일을 선택한 다음 Show 버튼을 누르면 위의 그림과 같은 대화상자가 뜨는데, 여기서 들여쓰기 방식, 괄호 위치, 제어문 구조, 주석 형식 등 코드 스타일을 지정할 수 있다. 원하는 형식대로 설정했으면, 에디터에서 Ctrl+Shift+F 키를 통해 코드 형식을 적용할 수 있다.에디터간 이동 에디터 간을 이동하는 방법으로 단축키를 사용할 수도 있다. Ctrl+F6 키를 누르면 워크벤치 중앙에 현재 열려 있는 파일의 리스트가 팝업으로 표시되며, 여기서 원하는 파일을 선택할 수도 있다. Ctrl+F6은 에디터 간 전환, Ctrl+F7은 뷰 간 전환, Ctrl+F8은 퍼스펙티브 간 전환에 사용된다. 어느 뷰에 포커스가 있든 F12를 누르면 에디터로 포커스가 돌아온다.문자열 외부화 소스 코드에 구체적인 문자열을 포함시키지 않고 이를 리소스 파일로 외부화해 빌드에 연관되지 않도록 하는 것이 국제화/지역화 등에 관련된 문제를 처리하는 데 편하다. 그러나 프로그램을 개발할 때 처음부터 그렇게 작업하지 않았다면, 문자열을 찾아 일일이 리소스 파일로 빼내는 것도 상당한 작업이 될 수 있다. 이럴 때 Externalize Strings 위저드를 사용하면 간단히 작업할 수 있다. 문자열을 외부화할 소스 코드를 에디터에 열어놓고 메뉴바 또는 컨텍스트 메뉴에서 Source>Externalize Strings 메뉴를 선택하면 아래 그림과 같은 다이얼로그가 뜨는데, 여기서 문자열 외부화와 관련된 여러 가지 작업을 할 수 있다. 다이얼로그의 맨 윗부분에는 해당 문자열에 대한 키에 붙일 접두사를 지정하는 텍스트필드가 있고 디폴트로 해당 클래스 이름이 설정되어 있다. 그 아래 테이블에는 선택한 소스 코드에 나온느 모든 문자열이 표시되어 있는데, 문자열에 대한 키는 임시로 숫자로 지정되어 있다. 테이블에서 문자열을 하나 선택하면 해당 문자열이 나오는 코드가 다이얼로그의 아랫부분에 표시되고 테이블에서 문자열에 대한 키 부분을 수정할 수 있는 상태가 되는데, 해당 문자열에 대한 적절한 키를 지정해 주면 된다. 문자열 중에 외부화하지 않아도 되는 것이 있을 수 있는데, 이런 문자열은 테이블에서 선택한 다음 다이얼로그 오른쪽의 Ignore 또는 Internalize 버튼을 누르면 외부화 대상에서 제외된다. 외부화되지 않은 문자열은 컴파일러 설정에 따라 에러나 경고를 발생할 수 있는데, 다이얼로그에서 Ignore로 지정한 문자열에 대해서는 컴파일 에러나 경고가 발생하지 않는다. Internalize로 한 것은 문자열 외부화 대상에서는 제외되지만 컴파일 에러나 경고 대상에서는 제외되지 않는다. Externalize/Ignore/Internalize 상태는 테이블의 각 항목 앞에 있는 체그 박스를 클릭해 바꿀 수 있다. 마우스로 체크박스를 클릭하면 세 상태가 토글된다. 다이얼로그의 오른쪽 아랫 부분에 보면 Configure버튼이 있는데, 이 버튼을 누르면 아래 그림과 같은 다이얼로그가 뜨며, 여기서 문자열 외부화와 관련된 클래스와 리소스 파일에 대한 설정을 할 수 있다. eclipse JDT