@SuppressWarnings
Javaで有効な警告名のリストは何ですか?
("")
in の間に入るビット@SuppressWarnings("")
。
@SuppressWarnings
Javaで有効な警告名のリストは何ですか?
("")
in の間に入るビット@SuppressWarnings("")
。
IDE またはコンパイラによって異なります。
Eclipse Galileoのリストは次のとおりです。
- allすべての警告を抑制する
- ボックス化/ボックス化解除操作に関連する警告を抑制するためのボックス化
- キャスト操作に関連する警告を抑制するためのキャスト
- 非推奨のアノテーションに関連する警告を抑制するdep-ann
- 非推奨に関連する警告を抑制する非推奨
- switch ステートメントで欠落しているブレークに関連する警告を抑制するフォールスルー
- finallyは、返されない finally ブロックに関連する警告を抑制します
- 変数を非表示にするローカルに関連する警告を抑制するための非表示
- switch ステートメントの欠落エントリに関連する警告を抑制するincomplete-switch (enum ケース)
- nls非 nls 文字列リテラルに関連する警告を抑制する nls
- nullは null 分析に関連する警告を抑制します
- 推奨されない参照または禁止された参照の使用に関する警告を抑制する制限
- serialは、シリアル化可能なクラスの serialVersionUID フィールドの欠落に関連する警告を抑制します
- 誤った静的アクセスに関連する警告を抑制するstatic- access
- 内部クラスからの最適化されていないアクセスに関連する警告を抑制する Synthetic -access
- 未チェックの操作に関連する警告を抑制するために未チェック
- unqualified-field-accessフィールド アクセス unqualified に関連する警告を抑制する
- 未使用のコードに関連する警告を抑制するために使用されていません
Indigo のリストに追加:
- javadoc警告に関連する警告を抑制する javadoc
- 生の型の使用に関する警告を抑制する生の型
- 静的として宣言できるメソッドに関連する警告を抑制するstatic-method
- スーパー呼び出しなしでメソッドをオーバーライドすることに関連する警告を抑制するスーパー
Juno の追加リスト:
- タイプ Closeable のリソースの使用に関する警告を抑制するリソース
- 同期されたメソッドをオーバーライドするときに同期が欠落しているため、警告を抑制するsync-override
Kepler と Luna は、Juno と同じトークン リスト ( list ) を使用します。
他のものは似ていますが異なります。
すべての値が許可されます (認識されない値は無視されます)。認識されるもののリストは、コンパイラ固有です。
Java チュートリアル unchecked
ではdeprecation
、Java 言語仕様で必要な 2 つの警告としてリストされているため、これらはすべてのコンパイラで有効である必要があります。
すべてのコンパイラ警告はカテゴリに属しています。Java 言語仕様には、非推奨と未チェックの 2 つのカテゴリがリストされています。
それらが定義されているJava 言語仕様内の特定のセクションは、バージョン間で一貫していません。Java SE 8 仕様unchecked
では、セクション9.6.4.5deprecation
にコンパイラの警告としてリストされています。それぞれ@SuppressWarningsと9.6.4.6 @Deprecated。
Sun のコンパイラの場合、実行javac -X
すると、そのバージョンで認識されるすべての値のリストが表示されます。1.5.0_17 の場合、リストは次のようになります。
リストはコンパイラ固有です。ただし、 Eclipseでサポートされている値は次のとおりです。
- allDeprecation 非推奨コード内であっても非推奨
- allJavadoc が 無効か、javadoc が ありません
- assertIdentifier 識別子として使用される assert の発生
- ボクシング オートボクシング変換
- char 配列が明示的に文字列に変換されずに文字列連結で使用される場合の charConcat
- conditionAssign 可能な偶発的なブール代入
- コンストラク ター名を持つ constructorName メソッド
- dep-ann @Deprecated アノテーションがありません
- 非推奨のコード外での非推奨の型またはメンバーの非 推奨の使用
- 推奨さ れないアクセス規則に一致するタイプの推奨されない使用
- emptyBlock 文書化されていない空のブロック
- enumSwitch , incomplete-switch 不完全な列挙型スイッチ
- フォールスルー の可能性 フォールスルーのケース
- 別の変数を隠す fieldHidefield
- 最終境界を持つfinalBound 型パラメーター
- finally ブロックが正常に完了しない
- 禁止さ れたアクセス規則に一致するタイプの禁止された使用
- fieldHiding 、localHiding、typeHiding、および maskedCatchBlock の非表示マクロ
- indirectStatic 静的メンバーへの間接参照
- スーパー インターフェイスとして使用されるintfAnnotation 注釈型
- intfNonInherited インターフェイスの非継承メソッドの互換性
- javadoc 無効な javadoc
- localHiding ローカル変数が別の変数を隠している
- maskedCatchBlocks 隠しキャッチ ブロック
- nls 非 nls 文字列リテラル (タグ //$NON-NLS- の欠如)
- 効果のないnoEffectAssign 割り当て
- null 潜在的な欠落または冗長な null チェック
- nullDereference が見つからない null チェック
- @Override アノテーションが欠落 しているover-ann
- パラメータへのparamAssign 割り当て
- pkgDefaultMethod が package-default メソッドをオーバーライドしようとしています
- raw 型の raw 使用法 (パラメータ化された型の代わりに)
- セミコロン 不要なセミコロンまたは空のステートメント
- シリアル が見つからない serialVersionUID
- specialParamHiding コンストラクターまたはセッター パラメーターが別のフィールドを隠している
- indirectStatic および staticReceiver の static-accessマクロ
- 非静的レシーバーを使用して静的フィールドを取得したり、静的メソッドを呼び出したりする場合は staticReceiver
- スーパー呼び出しを行わずにメソッドをスーパーオーバーライド する
- @SuppressWarnings を 有効にする
- インナークラスの合成アクセスを実行する場合 は、syntheticAccess、synthetic-access
- タスク により、ソース コードでのタスク タグのサポートが有効になります
- typeHiding 型パラメータが別の型を隠している
- unchecked 未 チェックの型操作
- 不要な Else 不要 な else 句
- unqualified-field-access, unqualifiedField フィールドへの非 修飾参照
- unusedArgument、unusedImport、unusedLabel、unusedLocal、unusedPrivate、unusedThrown の 未使用マクロ
- 未使用の メソッド引数
- unusedImport 未使用のインポート参照
- 未使用ラベル 未使用ラベル
- unusedLocal 未使用のローカル変数
- unusedPrivate 未使用のプライベート メンバー宣言
- 未使用の 宣言されたスローされた例外
- uselessTypeCheck 不要なキャスト/インスタンス操作
- varargsCast varargs 引数には明示的なキャストが必要です
- @SuppressWarnings の warningToken 未処理の警告トークン
Sun JDK (1.6) には、サポートされている警告の短いリストがあります。
- deprecation 減価償却されたアイテムの使用を確認します。
- unchecked Java 言語仕様で義務付けられている未チェックの変換警告の詳細を示します。
- serial シリアル化可能なクラスで serialVersionUID 定義が欠落していることを警告します。
- finally正常に完了できない finally 句について警告します。
- フォールスルースイッチ ブロックでフォールスルー ケースをチェックし、検出された場合に警告メッセージを提供します。
- path 環境パス (クラスパスなど) に存在しないパスがないかどうかを確認します。
Mac 用の最新の利用可能な javac (1.6.0_13) には、次のサポートされている警告があります。
- 全て
- キャスト
- 非推奨
- ディビジョンゼロ
- 空の
- 未チェック
- フォールスルー
- 道
- シリアル
- 最後に
- オーバーライド
IntelliJ 抑制パラメーターのマスター リストがhttps://gist.github.com/vegaasen/157fbc6dce8545b7f12cにあることを追加したいだけです。
かなり包括的に見えます。部分的:
Warning Description - Warning Name
"Magic character" MagicCharacter
"Magic number" MagicNumber
'Comparator.compare()' method does not use parameter ComparatorMethodParameterNotUsed
'Connection.prepare*()' call with non-constant string JDBCPrepareStatementWithNonConstantString
'Iterator.hasNext()' which calls 'next()' IteratorHasNextCallsIteratorNext
'Iterator.next()' which can't throw 'NoSuchElementException' IteratorNextCanNotThrowNoSuchElementException
'Statement.execute()' call with non-constant string JDBCExecuteWithNonConstantString
'String.equals("")' StringEqualsEmptyString
'StringBuffer' may be 'StringBuilder' (JDK 5.0 only) StringBufferMayBeStringBuilder
'StringBuffer.toString()' in concatenation StringBufferToStringInConcatenation
'assert' statement AssertStatement
'assertEquals()' between objects of inconvertible types AssertEqualsBetweenInconvertibleTypes
'await()' not in loop AwaitNotInLoop
'await()' without corresponding 'signal()' AwaitWithoutCorrespondingSignal
'break' statement BreakStatement
'break' statement with label BreakStatementWithLabel
'catch' generic class CatchGenericClass
'clone()' does not call 'super.clone()' CloneDoesntCallSuperClone