コンパイラーの設定は、以下のセクションに分かれています。
オプション |
説明 |
デフォルト |
---|---|---|
到達不能コード |
到達不能コードは、オプションで、エラーまたは警告として報告するか、あるいは単に無視することができます。 バイトコード生成は常にこれを最適化します。Java 言語の仕様の場合、到達不能コードはエラーになるということに注意してください。 |
エラー |
解決不能インポート・ステートメント |
解決できないインポート・ステートメントは、オプションで、エラーまたは警告として報告するか、あるいは無視することができます。 Java 言語の仕様の場合、解決不能インポート・ステートメントはエラーになるということに注意してください。 |
エラー |
未使用の (読み取られていない) ローカル変数 |
使用可能にすると、コンパイラーは未使用のローカル変数 (つまり、読み取られていない変数) についてエラーまたは警告を出します。 |
無視 |
未使用の (読み取られていない) パラメーター |
使用可能にすると、コンパイラーは未使用のメソッド・パラメーター (読み取られていないパラメーター) についてエラーまたは警告を出します。 |
無視 |
未使用のインポート |
使用可能にすると、コンパイラーは未使用のインポート参照についてエラーまたは警告を出します。 |
警告 |
未使用の private 型、メソッド、またはフィールド |
使用可能にすると、コンパイラーは、同じ単位内で private メソッドまたはフィールドが宣言されても使用されていない場合にエラーまたは警告を出します。 |
無視 |
非外部化ストリングの使用 |
使用可能にすると、コンパイラーは、外部化されていない文字列リテラル (つまり、//$NON-NLS-<n>$ のタグがないもの) に対して、エラーまたは警告を出します。 |
無視 |
使用すべきでない API の使用 |
使用可能にすると、コンパイラーは使用すべきでない API の使用をエラーまたは警告として通知します。 |
警告 |
使用すべきでないコード内での使用すべきでない API の使用を知らせる |
使用可能にすると、コンパイラーは使用すべきでないコード内の使用すべきでない API の使用を通知します。 この問題の重大度は、「使用すべきでない API の使用」オプションで制御されます。 |
オフ |
コンパイル単位で報告される問題の最大数 |
コンパイル単位で報告される問題の最大数を指定します。 |
100 |
オプション |
説明 |
デフォルト |
---|---|---|
メソッドがオーバーライドされたがパッケージは不可視 |
パッケージ・デフォルト・メソッドは別のパッケージで可視ではないため、これをオーバーライドできません。 このオプションを使用可能にすると、コンパイラーはこのようなシナリオをエラーまたは警告として通知します。 |
警告 |
コンストラクター名を持つメソッド |
一般に、メソッドにコンストラクター名を使用して名前を付けると、プログラミングのスタイルが不良であると見なされます。 このオプションを使用可能にすると、コンパイラーはこのようなシナリオをエラーまたは警告として通知します。 |
警告 |
インターフェース・メソッドと保護「Object」メソッドの競合 |
使用可能にすると、継承されない Object メソッドと互換性のないメソッドをインターフェースが定義したときに、コンパイラーはエラーまたは警告を出します。この競合が解決するまで、次のようなインターフェースはインプリメントできません。 interface I { int clone(); } |
警告 |
隠れた catch ブロック |
ローカル側の try ステートメントに対して、いくつかの catch ブロックが以下のように他の catch ブロックを隠す場合があります。 try { throw new java.io.CharConversionException(); } catch (java.io.CharConversionException e) { } catch (java.io.IOException e) {}. このオプションを使用可能にすると、コンパイラーは、チェックされた例外に対応する隠れた catch ブロックについてエラーまたは警告を出します。 |
警告 |
静的メンバーへの非静的アクセス |
使用可能にすると、コンパイラーは、static フィールドまたはメソッドが式の受取側でアクセスされるときにエラーまたは警告を出します。 静的メンバーの参照は、型名で限定されなければなりません。 |
警告 |
エンクロージング型のアクセス不能メンバーへのアクセス |
使用可能にすると、コンパイラーはエンクロージング型のアクセス不能メンバーへのアクセスをエミュレートするとき、エラーまたは警告を出します。 このようなアクセスは、パフォーマンスに影響を与える可能性があります。 |
無視 |
効果のない代入 (例:「x = x」) |
使用可能にすると、コンパイラーは、代入に効果がないとき (例:「x = x」) にエラーまたは警告を出します。 |
警告 |
ストリング連結での文字配列の使用 |
使用可能にすると、char[] 式が次のストリング連結で使用されたときに、コンパイラーはエラーまたは警告を出します。 "hello" + new char[]{'w','o','r','l','d'}
|
警告 |
オプション |
説明 |
デフォルト |
---|---|---|
コンパイラー準拠レベル |
JDK コンパイラー準拠レベルを指定します。 |
1.3 |
デフォルトの準拠設定の使用 |
使用可能にすると、コンパイラー準拠レベルのデフォルト準拠設定が適用されます。 |
オン |
生成されたクラス・ファイルの互換性 |
生成されたクラス・ファイルの互換性を指定します。 |
1.1 |
ソース互換性 |
ソースが 1.3 あるいは 1.4 互換かどうかを指定します。 1.4 からは、「assert」はアサーションのサポートで予約されたキーワードです。 |
1.3 |
「assert」を ID として報告 |
使用可能にすると、「assert」 (JDK 1.4 では予約済みキーワード) が ID として使用されたときにコンパイラーはエラーまたは警告を出します。 |
無視 |
生成されたクラス・ファイルに変数属性を追加 |
使用可能にすると、変数属性がクラス・ファイルに追加されます。これを使用すると、ローカル変数名がデバッガー (の変数が確実に定義されている場所) に表示されます。 このため、結果の .class ファイルはより大きいものになります。 |
オン |
生成されたクラス・ファイルに行番号属性を追加 |
使用可能にすると、行番号情報がクラス・ファイルに追加されます。これを使用すると、デバッガーでソース・コードが強調表示されます。 |
オン |
生成されたクラス・ファイルにソース・ファイル名を追加 |
使用可能にすると、ソース・ファイル名がクラス・ファイルに追加されます。これを使用すると、デバッガーが対応するソース・コードを表示します。 |
オン |
未使用のローカル変数を保存 |
使用可能にすると、未使用の (読み取られていない) ローカル変数はクラス・ファイルからはずされません。クラス・ファイルをはずすと、デバッグが変更される可能性があります。 |
オン |
オプション |
説明 |
デフォルト |
---|---|---|
不完全なビルド・パス |
クラスパスのエントリーが存在しない、適切でない、または不可視であるとき (例えば、参照プロジェクトが閉じているとき) に報告される問題の重大度を示します。 |
エラー |
循環依存関係 |
プロジェクトが循環に組み込まれているときに報告される問題の重大度を指示します。 |
エラー |
重複リソース |
複数のリソースのオカレンスが出力ロケーションにコピーされたときに報告される問題の重大度を示します。 |
警告 |
ビルド・パス・エラーでビルドを中断 |
クラスパスが無効な場合、ビルダーを中断に切り替えることができます。 |
オン |
フル・ビルドで出力フォルダーを修正 |
フル・ビルド操作の実行時に Java ビルダーが出力フォルダーをクリーンできるかどうかを示します。 |
オン |
ソース・フォルダーで除外パターンの使用を可能にする |
使用不可にすると、プロジェクト・クラスパスのエントリーは除外パターンと関連付けることができなくなります。 |
オン |
ソース・フォルダーに複数の出力ロケーションの使用を可能にする |
使用不可にすると、複数の出力ロケーションの使用を回避するため、プロジェクト・クラスパスのエントリーは特定の出力ロケーションと関連付けることができなくなります。 |
オン |
フィルターするリソース |
出力フォルダーにコピーされないファイル・パターンのコンマで区切られたリスト。 |
'' |
Java プログラムのビルド
ビルド・パスの操作
JRE の操作