it-swarm.com.ru

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

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

assertEquals(expectedValue, actualValue);

удар Ctrl + Shift + O и добавим Eclipse:

import static org.junit.Assert.assertEquals;

Может быть, я слишком много прошу.

399
Paul Croarkin

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

Окно> Настройки> Java> Редактор> Помощник по содержимому> Избранное

У меня есть следующие записи (при добавлении используйте "Новый тип" и пропустите .*):

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

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

561
Joey Gibson

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

239
Dave L.

В Eclipse 3.4 есть раздел "Избранное" в разделе "Окно"> "Настройки"> "Java"> "Редактор"> "Помощник по содержимому"

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

31
Bill Michell

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

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

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

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

21
Paul Croarkin

От Помощник по содержимому для статического импорта

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

Откройте Window » Preferences » Java » Editor » Content Assist » Favorites

enter image description here

10
Sumit Singh

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

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

5
Neeraj

В Eclipse 4.9 вы можете статически импортировать существующие вызовы, используя быстрое исправление.

Было реализовано новое быстрое исправление, которое позволяет пользователю преобразовывать статические обращения к полям и статические методы для использования статического импорта. Также возможно заменить все вхождения одновременно.

подробнее здесь

2
Ankit Soni

Ярлык для статического импорта: CTRL + SHIFT + M

1
Michael Hegner

Выберите константу, введите

Ctrl + 1  (quick fix)

Выберите "Преобразовать в статический импорт". из выпадающего списка.

"Быстрое исправление" имеет параметры, даже если это не ошибка.

1
teknopaul