Мне нужно сделать поиск в файлах. Я хочу игнорировать или исключать сгенерированные файлы, такие как артефакты JAX-WS или классы в целевых папках. Как я могу сказать, что IDEA исключает эти файлы из поиска?
Как я могу сказать IntelliJ "Найти в файлах", чтобы игнорировать сгенерированные файлы?
Ответ 1
Создайте Пользовательский масштаб, определяющий набор файлов для включения/исключения из вашего поиска.
- CTRL + SHIFT + F для Найти в диалоговом окне Путь. (Пользователи Mac нажимают command + SHIFT + F)
-
В разделе Сфера выберите Пользовательский.
-
Выберите область из раскрывающегося списка или создайте пользовательский масштаб, нажав кнопку ... справа от раскрывающегося списка.
- В появившемся диалоговом окне нажмите кнопку + и выберите Локальный
- На правой панели вы можете включать и исключать отдельные файлы и рекурсивно включать или исключать все файлы под папкой.
Теперь, когда вы используете Найти в пути, используйте свою настраиваемую область, чтобы ограничить поиск файлов.
Я подозреваю, что ссылка на Найти в файлах в вашем вопросе, что эти инструкции могут не применяться к вашей версии, но полезно знать, что эта функциональность существует, и всегда есть 30-дневная оценочная версия.
Ответ 2
Я знаю, что это поздно, и ответ Роба порядочный. Я просто хотел бы добавить следующую альтернативу: если вы выбрали область Custom
(как в ответе Роба), то оставьте выделение в Project Files
, это сделает IntelliJ поиск более выборочным, чем по умолчанию. Я не знаю, каковы точные различия, но особенно интересно, что если вы помечаете каталог как Excluded
либо с помощью вкладки Modules
в настройках Project Structure
, либо щелкнув правой кнопкой мыши по каталогу и выбрав Mark Directory As
→ Excluded
.
Если файлы, которые вы хотите исключить, находятся в одном или нескольких каталогах, поэтому вы можете легко вручную настроить эти правила исключения, это действительно хороший способ получить тот же результат без необходимости настраивать настраиваемую область.
Я тестировал это в IntelliJ Ultimate 14.1.4. Я не знаю, как это работает в других версиях, но я подозреваю, что большинство v14 по крайней мере будут вести себя одинаково.
Ответ 3
Вы также можете поместить фильтр поискового файла, начинающийся с знака !
, чтобы исключить.
Пример для поиска кода не в тестовых файлах Java:
!*Test.java
Если у вас есть несколько типов файлов, вы можете выделить знак ,
.
Пример для поиска только в файлах Kotlin и Groovy:
*.kt,*.groovy
Это также может быть полезно.