Автоматически удалите явные объявления пакета с операторами импорта в Java

Мне создали проект другие, который включает тысячи файлов класса и имеет имена пакета, явно выведенные для каждой ссылки на любой из их классов. Похоже, что код был перепроектирован. Есть ли хороший инструмент для Java, который осуществляет рефакторинг код так, чтобы явно введенные префиксы пакета были удалены из ссылок класса и перемещены в операторов импорта.

Заранее спасибо.

Править:

Я думаю, что пример поможет. Я хочу иметь импорт наверху, и я не забочусь, сколько там импорт.

javax.swing.JButton button1 = new javax.swing.JButton();

Вообразите код выше, но абсолютно везде в тысячах на тысячи строк кода среди тысяч файлов класса. Я хотел бы иметь возможность удалить все префиксы и просто иметь хороший импорт javax.swing. JButton; наверху каждого файла класса.

19
задан AlbertoPL 26 January 2010 в 21:12
поделиться

5 ответов

Я не знаю инструмент для этого использования, но мне пришлось сделать что-то похожее несколько месяцев назад.

  • Напишите сценарий или сделайте поиск, замените на Regex, чтобы избавиться от явных набранных префиксов пакета.

  • , чем пусть Eclipse делает остальные с помощью «Организовать импорт». Ctrl-1

Подсказка: чтобы избежать неоднозначных чисел, настроить классную патрубку не более необходимым libs. Для Srund около 800 классов я был сделан через 2 часа.

  • Или возьмите кого-то, кто заслужил этого, чтобы сделать эту работу.

Отредактируйте: Вы должны знать, что в Prefeneces / Java / Editor / Save Actions, организуйте импорт можно настроить как сохранение действий.

8
ответ дан 30 November 2019 в 04:52
поделиться

Для одного типа Eclipse предлагает действие «Добавить импорт» (Shift + Ctrl + M). Это имеет именно то, что вы хотите - с большим, большим ограничением: вы должны поместить курсор на тип, и он повлияет на это только «выбранный» вхождение.

Но, возможно, это действие может быть использовано в сценарии / глобальном методе. Плагин JDT может пройти через AST и вызывать это действие на каждый тип найден.

5
ответ дан 30 November 2019 в 04:52
поделиться

Эта тема говорит:

Выберите просмотр проводника пакета, щелкните правой кнопкой мыши на вашем проекте, выберите «Источник», затем организуйте импорт. Бобс, ваш дядя - все нежелательные импорта удаляются

, чтобы сделать его лучше отформатированным:

Щелкните правой кнопкой мыши проект> Источник> Организовать импорт

Теперь, что остается, это найти способ разбить полностью квалифицированные имена из код. Вы можете подумать о каком-то регулярном выражении. Взгляните на в этой библиотеке - кажется полезным. Эта статья также должна быть полезной.

2
ответ дан 30 November 2019 в 04:52
поделиться

Любопытно повторяющийся образец

шаблоны выражения

Вероятно, вся концепция мета-программирования также

-121--3126718-

Это более хорошая практика кодирования, так как любой читающий ваш код сразу узнает, какие классы используются определенным классом, просто посмотрев на блок импорта в верхней части файла, тогда как нужно было бы покопаться, чтобы узнать, если вы использовали подстановочные знаки.

-121--762943-

IntelliJ Idea имеет инструменты для выполнения этой задачи в каждом файле. Возможно, вы также можете сделать это навалом, но я не знаю как.

Попробуйте провести 30-дневную оценку, и вы, вероятно, будете довольны большим количеством функций очистки импорта.

1
ответ дан 30 November 2019 в 04:52
поделиться

Вам, вероятно, нужно заменить все javax.swing. . Затем организуйте импорт.

0
ответ дан 30 November 2019 в 04:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: