IntelliJが警告を表示するJavaコード行があります。他の行に表示される警告に影響を与えずに、特定の行の警告を無音にするにはどうすればよいですか?
この質問では、実際の警告とは無関係です。特定のJavaコードの品質を改善する方法についてのアドバイスは求めていませんが、一般的な方法を知りたいIntelliJが特定のJavaソース行に警告を表示しないようにします。
ほとんどの場合、IntelliJでは、行をクリックしてAlt+Enter
、および警告などを抑制するオプションがあります。
Ryan Stewartの答えを拡張して、IntelliJで_Alt+Enter
_を使用し、最初のサブメニューを選択してから、最後の項目_Suppress for statement
_を選択します。
更新
IntelliJ IDEA 13を使用すると、追加のメニュー項目に気付きました:「コメント付きのステートメントを非表示」。これは、IntelliJスタイル_//noinspection unchecked
_を使用します。 IntelliJは次のテキストを挿入します:@SuppressWarnings("unchecked")
。
警告に応じて、@SuppressWarnings
。例えば:
@SuppressWarnings("deprecation")
yourLineWhichIsDeprecated;
この回答を見てください 抑制できる警告の非常に長いリストについて。詳細については、そのトピックに関する他の投稿を確認してください。
IntelliJ 15では、インラインの「黄色い電球」とalt-enterメニューでは、1行の検査を抑制できません。
メニューを使用して検査を実行する場合、他のオプションがあります:Analyze -> Inspect Code...
。
次に、検査パネルの右側にさまざまなオプションがあります。右側のパネルの一部のテキストはクリック可能です。通常、問題解決機能(クイックフィックス)も利用できることに注意してください。
(どうやら@tinoは既にコメントでこれに気付いていたようですが、初めて彼のコメントを見逃しました。個人的に見逃した重要な部分を見つけやすくするために、これを完全な回答として追加しています。)
//未検査、ConstantConditions
@SuppressWarningsはすべての場所で機能するわけではありません
Kotlin言語とIntelliJを使用してコードをコンパイルする場合のヒントを次に示します
コンパイラの警告にOriginがあり、Kotlinコンパイラによって出力されるデフォルトのエラーメッセージが定義されているgithubソースへのリンクを次に示します。
kotlin/compiler/frontend/src/org/jetbrains/kotlin/diagnostics/rendering/DefaultErrorMessages.Java
コンパイラーが「変数 '' {0} ''は使用されない」を出力する場合この行はDefaultErrorMessages.Javaを形成します
MAP.put(UNUSED_VARIABLE, "Variable ''{0}'' is never used", NAME);
警告を抑制するには、次のようにコード内の未使用の変数の前に@Suppress()注釈を配置できます。
@Suppress("UNUSED_VARIABLE")
var y: Int = 3
そのため、IntelliJが強調表示された式でAlt + ENTERを押して候補をポップアップするのに役立たない場合のトリックは、エラーメッセージとキーワードを見つけることができる場合、内部DefaultErrorMessages.Javaを調べることです。 @Suppress(.. names)を使用して特定の警告を抑制する
このトピックは「Kotlin」とマークされていませんが、少なくともIntelliJとマークされています