web-dev-qa-db-fra.com

Désactiver l'avertissement dans IntelliJ pour une ligne

J'ai une ligne de code Java où IntelliJ affiche un avertissement. Comment puis-je désactiver l'avertissement dans cette ligne particulière, sans affecter les avertissements affichés dans d'autres lignes?

Dans cette question, il n'est pas pertinent de savoir quel est l'avertissement réel: maintenant je ne cherche pas de conseils sur la façon d'améliorer la qualité d'un morceau spécifique de code Java code, mais je veux savoir en général comment empêcher IntelliJ d'afficher un avertissement sur une ligne source spécifique Java.

64
kat

Surtout dans IntelliJ, vous pouvez cliquer sur la ligne et Alt+Enter, et il aura des options pour supprimer l'avertissement, entre autres choses.

65
Ryan Stewart

Développant la réponse de Ryan Stewart, dans IntelliJ, utilisez Alt+Enter, Puis sélectionnez le premier sous-menu, puis le dernier élément: Suppress for statement.

enter image description here

Mise à jour

En utilisant IntelliJ IDEA 13, j'ai remarqué un élément de menu supplémentaire: "Supprimer pour l'instruction avec commentaire". Cela utilisera le style IntelliJ //noinspection unchecked. Si vous sélectionnez "Supprimer pour l'instruction" , IntelliJ insérera ce texte: @SuppressWarnings("unchecked").

49
kevinarpe

Selon l'avertissement, vous pouvez utiliser @SuppressWarnings. Par exemple:

@SuppressWarnings("deprecation")
yourLineWhichIsDeprecated;

Jetez un œil à cette réponse pour une assez longue liste d'avertissements que vous pouvez supprimer. Consultez les autres articles sur ce sujet pour plus de détails.

12
Martijn Courteaux

Dans IntelliJ 15, les menus en ligne "bulbe jaune" et alt-enter ne proposent pas de supprimer l'inspection pour 1 ligne.

Il y a plus d'options lors de l'exécution des inspections via le menu: Analyze -> Inspect Code....

Ensuite, sur le panneau d'inspection, le côté droit offre diverses options. Une partie du texte dans le panneau de droite est cliquable. Notez que généralement la fonction de résolution de problèmes (solution rapide) est également disponible.

enter image description here

(Apparemment, @tino l'a déjà remarqué dans un commentaire, mais j'ai raté son commentaire la première fois. J'ajoute ceci comme réponse complète pour rendre le morceau important que j'ai personnellement manqué plus facile à trouver.)

6
Peter Lamberg

// non-inspection non vérifiée, ConstantConditions

@SuppressWarnings ne fonctionne pas partout

0
telebog

Lors de la compilation de code en utilisant le langage Kotlin et IntelliJ, voici un indice

Voici un lien vers la source github où les avertissements du compilateur ont leur origine et où les messages d'erreur par défaut générés par le compilateur Kotlin sont définis

kotlin/compilateur/frontend/src/org/jetbrains/kotlin/diagnostics/rendering/DefaultErrorMessages.Java

Si le compilateur génère "La variable '' {0} '' n'est jamais utilisée" elle provient de cette forme de ligne DefaultErrorMessages.Java

MAP.put(UNUSED_VARIABLE, "Variable ''{0}'' is never used", NAME);

Pour supprimer l'avertissement, vous pouvez placer une annotation @Suppress () avant une variable inutilisée dans votre code comme ceci:

@Suppress("UNUSED_VARIABLE")
var y: Int = 3

Donc, l'astuce si l'IntelliJ ne vous aide pas à faire apparaître des suggestions en appuyant sur Alt + ENTER sur une expression en surbrillance consiste à regarder à l'intérieur DefaultErrorMessages.Java si vous pouvez trouver le message d'erreur et le mot-clé pour supprimer un avertissement particulier en utilisant @Suppress (.. names)

Ce sujet n'est pas marqué "Kotlin" mais au moins marqué IntelliJ

0
flodis