정적 가져 오기를 포함하도록 Eclipse 최적화 가져 오기


411

어쨌든 Eclipse가 자동으로 정적 가져 오기를 찾도록 할 수 있습니까? 예를 들어, 마침내 Junit 4로 업그레이드 했으므로 다음과 같이 작성할 수 있습니다.

assertEquals(expectedValue, actualValue);

명중 Ctrl+ Shift+ O와이 이클립스 추가 :

import static org.junit.Assert.assertEquals;

어쩌면 내가 너무 많이 묻었을 수도 있습니다.

답변:


572

선호하는 환경 설정 섹션이있는 Eclipse Europa를 사용하고 있습니다.

창> 환경 설정> Java> 편집기> 컨텐츠 지원> 즐겨 찾기

내 경우 다음과 같은 항목이 있습니다 (추가 할 때 "New Type"을 사용하고을 생략하십시오 .*).

org.hamcrest.Matchers.*
org.hamcrest.CoreMatchers.*
org.junit.*
org.junit.Assert.*
org.junit.Assume.*
org.junit.matchers.JUnitMatchers.*

그 중 세 번째를 제외한 모든 것은 정적 가져 오기입니다. 이 파일을 즐겨 찾기로 사용하여 " assertT"를 입력 하고 Ctrl+를Space 누르면 Eclipse assertThat가 제안으로 제안되며, 선택하면 파일에 적절한 정적 가져 오기가 추가됩니다.


26
아-트릭은 단순히 org.junit.Assertvia 를 추가 New Type...하는 것 .*입니다.
KomodoDave

5
자동 가져 오기 Ctrl+Shift+o가 필요한 가져 오기를 추가하지 않는 것이 맞 Add static import..습니까? 실제로 커서를 가리키고 옵션을 선택해야 합니까? 일반적인 자동 가져 오기 선택 목록 대화 상자가 표시되지 않는 것은 부끄러운 일입니다.
KomodoDave

2
@ J.Stoever-JUnit 4를 사용하는 경우 Hamcrest 양식을 사용하려고합니다.assertThat(value, is(expected));
David Harkness

2
나는 Eclipse Kepler로 이것을 시도했지만 아무 소용이 없습니다. Eclipse도 다시 시작했습니다. CTRL + 1을 누르거나 누를 때 자동 완성, 정적 가져 오기 선택이 없음.
Magnilex

2
Intellij Idea는이를 즉시 지원합니다. 부끄러운 일식은하지 않습니다.
Neeraj

242

메소드를 강조 표시하고 + + (가져 오기 추가)를 Assert.assertEquals(val1, val2)누르면 최소한 Eclipse 3.4에서 정적 가져 오기로 추가됩니다.CtrlShiftM


11
맥에서 cmd-shift-M
Joshua Goldberg

15
Eclipse Juno에서는 메소드 만 강조 표시하고 나중에 CTRL + SHIFT + M을 사용하는 경우에만 작동하도록 만들었습니다.
ktulinho

5
이것이 승자가되어야합니다!
클린트 이스트우드

정적 필드 AX-> X (높이 AX 및 Ctrl + Shift + M)에도 작동합니다. 감사. 정확히 내가 원하는 것.
Eyad Ebrahim

5
Luna에서 나를 위해 일합니다. 커서가 기간 오른쪽에 있는지 확인하십시오. 몇 년 전에 내가 배웠 으면 좋겠다!
HDave

31

Eclipse 3.4에는 Window-> Preferences-> Java-> Editor-> Content Assist 아래에 Favorites 섹션이 있습니다.

org.junit.Assert많이 사용 하면 거기에 추가 할 가치가 있습니다.


21

정확히 내가 원하는 것은 아니지만 해결 방법을 찾았습니다. Eclipse 3.4 (Ganymede)에서

창-> 기본 설정-> Java-> 편집기-> 콘텐츠 지원

정적 가져 오기 사용 (1.5 이상) 확인란을 선택 하십시오 .

이렇게하면 Optimize Imports에서 가져 오기가 수행되지 않지만, 빠른 수정 ( CTRL+ 1)을 수행하면 정적 가져 오기를 추가 할 수있는 옵션이 제공됩니다.


10

에서 콘텐츠 고정 수입 어시스트

정적 멤버에 대한 컨텐츠 지원 제안을 얻으려면 즐겨 찾기 환경 설정 페이지 Java > Editor > Content Assist > Favorites환경 설정 페이지에서 즐겨 찾는 정적 멤버 목록을 구성 하십시오.
예를 들어 java.util.Arrays.*또는 org.junit.Assert.*이 목록에 추가 한 경우 완료 접두사와 일치하는이 유형의 모든 정적 메소드가 제안서 목록에 추가됩니다.

열다 Window » Preferences » Java » Editor » Content Assist » Favorites

여기에 이미지 설명을 입력하십시오


5

SpringFramework 테스트의 경우 아래도 추가하는 것이 좋습니다.

org.springframework.test.web.servlet.request.MockMvcRequestBuilders
org.springframework.test.web.servlet.request.MockMvcResponseBuilders
org.springframework.test.web.servlet.result.MockMvcResultHandlers
org.springframework.test.web.servlet.result.MockMvcResultMatchers
org.springframework.test.web.servlet.setup.MockMvcBuilders
org.mockito.Mockito

위의 새 유형으로 추가하면 자동으로 패키지에. *가 추가됩니다.



2

상수를 선택하고 다음을 입력하십시오.

Ctrl + 1  (quick fix)

"정적 가져 오기로 변환"을 선택하십시오. 드롭 다운에서.

"빠른 수정"에는 오류가 아닌 옵션이 있습니다.


1

Eclipse 4.9에서는 빠른 수정 사항을 사용하여 기존 호출을 정적으로 가져올 수 있습니다.

사용자가 정적 필드 액세스 및 정적 메소드를 정적 가져 오기를 사용하도록 변환 할 수있는 새로운 빠른 수정 사항이 구현되었습니다. 모든 발생을 동시에 교체 할 수도 있습니다.

자세한 내용은 여기

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.