임포트 관리

 

당신이 알고 있듯이,  당신은 당신의 프로젝트, 자바 API 또는 부가의 라이브러리로부터 패키지 또는 클래스를 사용할 때마다, 그것을 위해 임포트 스테이트먼트를 쓰기 위해 필요합니다.  코드가 전개하는 것에 따라, 사용할지도 모르는 이것들의 일부는 임포트 스테이트먼트를 남겨두고 떠납니다.

IDEA 이런 특징과 함께 가능한한 빠르고 힘안드는 임포트를 다루는 것을 만듭니다:

 Import Assistant  
 Optimize Imports  

Import Assistant  


IDEA에서 클래스를 임포트하는 것은 상당히 쉽다:  바로 당신의 코드에서 그것을 사용하십시오.  당신이 그것을 하자마자 IDEA 클래스가 임포트 되고, Import Assistant 팝업하는 것을 결정합니다리스트된 하나 이상의 클래스가 있는 작은 선택자.   클래스가 프로젝트의 안에 존재하면, 선택자는 단지 하나의 선택을 포함합니다:

클래스를 임포트 하기 위해 Alt + Enter 누르십시오.  다른 패키지로부터의 다중 가능성이 있을 , 당신은 모든 가능한 패키지의 목록을 얻습니다:


당신이 원하는 클래스를 선택하고 클래스를 임포트 하기 위해 Enter 누르십시오.

 
임포트 보조자 특징은 어떤 기존 임포트 스테이트먼트에 그것을 추가하면서 파일의 헤드에 임포트 스테이트먼트를 자동적으로 생성합니다.  임포트 목록이 folded 이면, 그것은 남아 있습니다.

User interface options for the Import Assistant: 

디폴트 임포트 보조자 사용자 인터페이스는 그림 위에 나타납니다.  그러나, 당신은 그것을  Intention Action으로서 나타나기 위해 선택적으로 변경할 있습니다.

Intention Action 사용자 인터페이스를 사용하기 위해, File SettingsIDE Settings: Errors: Autoreparse

옵션 파일의 설정을 변경하십시오


Show import popup   옵션이 체크되지 않을 , 임포트를 잃어버리면 선택자를 자동적으로 팝업하지 않습니다오히려, Intention Action 기호  나타나고 당신은 importable클래스의 목록을 표시하도록 Alt + Enter 눌러야만 합니다.
 

Optimize Imports  


조만간, 일부 클래스를 임포트할 필요가 있는 코드에서 무엇인가 변할 것입니다.  미사용 임포트는 코드 효율성 상의 댐퍼입니다. 그러나 전형적으로 당신은 하고 있는 것을 멈추어야만 하고, 파일의 선두에 스크롤 해야만 하고, 미사용 임포트를 발견해야만 하고 라인을 제거해야만 합니다. 그것은 당신의 실제 작업으로부터의 산만입니다. 그래서 당신이 사용을 제거할 임포트를 제거하는 것은 매우 잊기 쉽습니다.
 IDEA
Optimize Imports 특징과 함께 산만을 최소화합니다.  한번에 당신의 현재의 파일로부터 또는 최신 디렉터리의 모든 파일로부터 미사용 임포트를 제거하기 위해 편리할 때마다 당신은 그것을 사용할 있습니다.

 
특징을 호출하는 개의 방법이 있습니다:

 Main menu: 
Tools | Optimize Imports


 Keyboard: 

 Ctrl + Alt + O  
 

 Project Tool Window  : 
문맥 메뉴

 Commander Tool Window  : 
문맥 메뉴


당신이 Optimize Imports 호출할 다음과 유사한 다이얼로그는 나타납니다:

옵션 버튼은 사용 가능하게 되거나, 당신이 Optimize Imports 호출했을 어디에 당신이 포커스를 해야 하는지 달려있는 것을  불가능하게 했습니다.

Option button  

Conditions  

'File'  


캐럿이 에디터에 있든지, 또는 만일 파일이 윈도우에서 선택되면 사용 가능하게 합니다

'All files in directory'  
'


최신 디렉터리에서 모든 파일에서 임포트를 최적화합니다.
어떤 하위 디렉토리가 있다면, Include subdirectories 체크 박스가 보입니다.  만일 그것이 선택되면, 하위 디렉토리의 파일은 포맷될 것입니다.


당신이 Run  클릭할 , 정의된 범위의 모든 미사용 임포트는 제거됩니다.


Optimize Imports 코드 재포맷팅 함께 동시에 수행될 있습니다.