Как я могу сказать IntelliJ "Найти в файлах", чтобы игнорировать сгенерированные файлы?

Мне нужно сделать поиск в файлах. Я хочу игнорировать или исключать сгенерированные файлы, такие как артефакты JAX-WS или классы в целевых папках. Как я могу сказать, что IDEA исключает эти файлы из поиска?

Ответ 1

Создайте Пользовательский масштаб, определяющий набор файлов для включения/исключения из вашего поиска.

  • CTRL + SHIFT + F для Найти в диалоговом окне Путь. (Пользователи Mac нажимают command + SHIFT + F)
  • В разделе Сфера выберите Пользовательский.

    Find in Path

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

  • В появившемся диалоговом окне нажмите кнопку + и выберите Локальный
  • На правой панели вы можете включать и исключать отдельные файлы и рекурсивно включать или исключать все файлы под папкой.

Теперь, когда вы используете Найти в пути, используйте свою настраиваемую область, чтобы ограничить поиск файлов.

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

Ответ 2

Я знаю, что это поздно, и ответ Роба порядочный. Я просто хотел бы добавить следующую альтернативу: если вы выбрали область Custom (как в ответе Роба), то оставьте выделение в Project Files, это сделает IntelliJ поиск более выборочным, чем по умолчанию. Я не знаю, каковы точные различия, но особенно интересно, что если вы помечаете каталог как Excluded либо с помощью вкладки Modules в настройках Project Structure, либо щелкнув правой кнопкой мыши по каталогу и выбрав Mark Directory AsExcluded.

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

Я тестировал это в IntelliJ Ultimate 14.1.4. Я не знаю, как это работает в других версиях, но я подозреваю, что большинство v14 по крайней мере будут вести себя одинаково.

Ответ 3

Вы также можете поместить фильтр поискового файла, начинающийся с знака !, чтобы исключить. Пример для поиска кода не в тестовых файлах Java: !*Test.java

Если у вас есть несколько типов файлов, вы можете выделить знак ,. Пример для поиска только в файлах Kotlin и Groovy: *.kt,*.groovy

Это также может быть полезно.