114 votes

Comment puis-je dire à la fonction "Rechercher dans les fichiers" d'IntelliJ d'ignorer les fichiers générés ?

J'ai besoin de faire une recherche dans les fichiers. Je veux ignorer ou exclure les fichiers générés, comme les artefacts JAX-WS ou les classes dans les dossiers cibles. Comment puis-je dire à IDEA d'exclure ces fichiers de la recherche ?

108voto

Rob Kielty Points 3274

Créer un Portée personnalisée définir l'ensemble des fichiers à inclure/exclure de votre recherche.

  1. CTRL + SHIFT + F pour le Trouvez dans le chemin dialogue. (Les utilisateurs de Mac appuient sur command + shift + F )

  2. Sous Portée sélectionnez Personnalisé .

    Find in Path

  3. Choisissez une portée dans la liste déroulante ou créez une portée personnalisée en cliquant sur le bouton ... à droite de la liste déroulante.

  4. Dans la boîte de dialogue qui apparaît, cliquez sur l'icône + et sélectionnez Local

  5. Dans le volet de droite, vous pouvez inclure et exclure des fichiers individuels et inclure ou exclure récursivement tous les fichiers d'un dossier.

Maintenant, lorsque vous utilisez Trouver dans le chemin Dans le cas d'une recherche de fichiers, utilisez votre champ d'application personnalisé pour limiter les fichiers à rechercher.

Je soupçonne, d'après la référence à Rechercher dans les fichiers dans votre question que ces instructions peuvent ne pas s'appliquer à votre version mais il est utile de savoir que cette fonctionnalité existe et qu'il y a toujours la version d'évaluation de 30 jours.

58voto

Thor84no Points 2969

Je sais que j'arrive tard dans la soirée et que la réponse de Rob est bonne. J'aimerais cependant ajouter l'alternative suivante : si vous avez choisi la solution Custom (comme dans la réponse de Rob), puis laissez la sélection à Project Files Cette option permet à IntelliJ d'effectuer des recherches un peu plus sélectives que par défaut. Je ne sais pas quelles sont les différences exactes, mais ce qui est particulièrement intéressant, c'est que si vous marquez un répertoire en tant que Excluded soit en utilisant le Modules dans l'onglet Project Structure ou en cliquant avec le bouton droit de la souris sur un répertoire et en sélectionnant Mark Directory As -> Excluded .

Si les fichiers que vous souhaitez exclure se trouvent dans un seul ou un nombre relativement restreint de répertoires, de sorte que vous pouvez facilement configurer manuellement ces règles d'exclusion, il s'agit d'un moyen vraiment agréable d'obtenir le même résultat sans avoir à configurer une portée personnalisée.

J'ai testé ceci dans IntelliJ Ultimate 14.1.4. Je n'ai aucune idée de la façon dont il se comporte dans les autres versions, mais je pense que la plupart de la v14 au moins se comportera de la même façon.

22voto

alex.b Points 133

Vous pouvez également mettre le filtre du fichier de recherche commençant par ! signe à exclure. Exemple pour rechercher du code ne se trouvant pas dans les fichiers Java de Test : !*Test.java

Si vous avez quelques types de fichiers que vous pouvez séparer avec , signe. Exemple de recherche dans les fichiers Kotlin et Groovy uniquement : *.kt,*.groovy

Cela pourrait également être utile.

8voto

yoAlex5 Points 2350

Sauter le motif des fichiers générés

J'utilise le motif suivant pour exclure les fichiers générés

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

[Comment ajouter un nouveau motif de suivi et de saut de motifs de tests]

0voto

nemoo Points 790

J'utilise ce filtre pour créer une portée personnalisée afin d'exclure le dossier cible dans les applications play framework :

(src:*..*||test:*..*)&&!file:target//*

Il s'agit également de la référence linguistique pour le langage de définition de l'étendue : https://www.jetbrains.com/help/idea/scope-language-syntax-reference.html

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X