How can I tell IntelliJ's "Find in Files" to ignore generated files?

Intellij Idea

Intellij Idea Problem Overview


I need to do a find in files. I want to ignore or exclude generated files, like JAX-WS artifacts or classes in target folders. How can I tell IDEA to exclude these files from the find?

Intellij Idea Solutions


Solution 1 - Intellij Idea

Create a Custom Scope defining the set of files to include/exclude from your search.

  1. CTRL+SHIFT+F for the Find in Path dialog. (Mac users press command+shift+F)

  2. Under Scope select Custom.

    Find in Path

  3. Choose a scope from the drop down list or create a Custom Scope by clicking on the ... button to the right of dropdown.

  4. In the dialog that appears, click on the + button and select Local

  5. On the right pane you can Include and Exclude individual files and Recursively include or exclude all files beneath a folder.

Now when you use Find in Path, use your custom scope to restrict which files are searched.

I suspect from the reference to Find in Files in your question that these instructions may not apply to your version but it is useful to know that this functionality exists and there is always the 30 day evaluation version.

Solution 2 - Intellij Idea

I know this is late to the party, and Rob's answer is a decent one. I'd just like to add the following alternative though: if you chose the Custom scope (as in Rob's answer), then leave the selection at Project Files, this will make IntelliJ search a bit more selectively than by default. I don't know what the exact differences are, but of particular interest is that if you mark a directory as Excluded either using the Modules tab in the Project Structure settings, or by right-clicking on a directory and selecting Mark Directory As -> Excluded.

If the files you want to exclude are in a single or relatively few directories so you can easily manually set up these exclusion rules, this is a really nice way of getting the same result without needing to configure a custom scope.

I tested this in IntelliJ Ultimate 14.1.4. I have no idea how it behaves in other versions, but I suspect most of v14 at least will behave the same.

Solution 3 - Intellij Idea

You can also put the search file filter starting with ! sign to exclude. Example to search code not in Test Java files: !*Test.java

If you have a few types of files you can separate with , sign. Example to search in Kotlin and Groovy files only: *.kt,*.groovy

This might be also helpful.

Solution 4 - Intellij Idea

Skip generated files pattern

I use the next pattern to exclude generated files

!file:*intermediates*/&&!file:*generated*/&&!lib:*..*

[How to add a new pattern follow and skip tests pattern]

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionFreiheitView Question on Stackoverflow
Solution 1 - Intellij IdeaRob KieltyView Answer on Stackoverflow
Solution 2 - Intellij IdeaThor84noView Answer on Stackoverflow
Solution 3 - Intellij Ideaalex.bView Answer on Stackoverflow
Solution 4 - Intellij IdeayoAlex5View Answer on Stackoverflow