Eclipse оптимизирует импорт для включения статического импорта

Есть ли способ заставить Eclipse автоматически искать статический импорт? Например, теперь, когда я, наконец, обновился до 4 июня, я бы хотел написать:

assertEquals(expectedValue, actualValue);

нажмите Ctrl + Shift + O и добавьте Eclipse:

import static org.junit.Assert.assertEquals;

Возможно, я слишком много спрашиваю.

Ответ 1

Я использую Eclipse Europa, который также имеет раздел предпочтений:

Окно > Настройки > Java > Редактоp > Контентная поддержкa > Избранное

В моем случае у меня есть следующие записи (при добавлении, использовании "нового типа" и опускании .*):

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

Все, кроме третьего, являются статическими. Имея эти фавориты, если я набираю "assertT" и нажимаю Ctrl + Space, Eclipse предлагает assertThat в качестве предложения, и если я его выберу, он добавит правильный статический импорт в файл.

Ответ 2

Если вы выделите метод Assert.assertEquals(val1, val2) и нажмите Ctrl + Shift + M (Добавить импорт), он добавит его как статический импорт, по крайней мере, в Eclipse 3.4.

Ответ 3

Eclipse 3.4 имеет раздел "Избранное" в разделе "Окно" > "Настройки" > "Java- > Editor- > Content Assist"

Если вы используете org.junit.Assert много, вы можете найти какое-то значение для его добавления.

Ответ 4

Не совсем то, что я хотел, но я нашел обходное решение. В Eclipse 3.4 (Ganymede) перейдите к

Окно- > Настройки- > Java- > Editor- > Content Assist

и установите флажок Использовать статический импорт (только 1,5 или выше).

Это не приведет к импорту в Оптимизированном импорте, но если вы выполните Quick Fix (CTRL + 1) в строке, он даст вам возможность добавить статический импорт, который достаточно хорош.

Ответ 5

Из Контентная поддержка для статического импорта

Чтобы получить предложения по предоставлению контента для статических членов, настройте список избранных статических элементов на странице "Предпочтения избранных страниц" Java > Editor > Content Assist > Favorites.
Например, если вы добавили в этот список java.util.Arrays.* или org.junit.Assert.*, все статические методы этого типа, соответствующие префиксу завершения, будут добавлены в список предложений.

Открыть Window » Preferences » Java » Editor » Content Assist » Favorites

enter image description here

Ответ 6

С http://www.3pintech.com/products/fast-code/ вы можете статическим импортировать класс. Тогда все статические члены получат помощь кода. Вы можете взглянуть на это.

Ответ 7

Для тестов 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

Когда вы добавляете выше как новый тип, он автоматически добавляет. * к пакету.