JDT Core オプションは、いくつかの API からアクセス可能です。 これらの API のすべては、「JavaCore」にあります。 このオプションを操作するために必要なメソッドは次の 4 つのみです。
オプションは、値を持つすべて既知の構成可能オプションのハッシュ・テーブルとして操作されます。 ヘルパー定数は、オプション ID とその可能な定数値ごとに、 「JavaCore」 で定義されています。
「JDT コア」をユーザー・オプションのみで構成する場合は、次のコード・フラグメントが機能します。
// Get the current options
Hashtable options = JavaCore.getDefaultOptions();
// Change the value of an option
options.put(JavaCore.COMPILER_PB_DEPRECATION, JavaCore.ERROR);
// Set the new options
JavaCore.setOptions(options);
現行オプションをそのまま保持して、それらの 1 つのみを変更するには、以下のようにします。
// Get the current options
Hashtable options = JavaCore.getOptions();
// Change the value of an option
options.put(JavaCore.COMPILER_PB_DEPRECATION, JavaCore.ERROR);
// Set the new options
JavaCore.setOptions(options);
すべての「JDT コア」オプションは下の表にリストされています。 表はすべて同じ形式で、括弧内にオプション ID があり、デフォルト値は太字イタリックで示されます。
| 説明 | 値 |
|---|---|
| ローカル変数のデバッグ属性の生成 (COMPILER_LOCAL_VARIABLE_ATTR) | |
| この属性を生成すると、変数が明確に割り当てられる場所でのみ、 ローカル変数名をデバッガーで表示することができます (.class ファイルはより大きくなります)。 | GENERATE |
| DO_NOT_GENERATE | |
| 行番号デバッグ属性の生成 (COMPILER_LINE_NUMBER_ATTR) | |
| この属性を生成すると、デバッガーでソース・コードを強調表示できます (.class ファイルは大きくなります)。 | GENERATE |
| DO_NOT_GENERATE | |
| ソースのデバッグ属性の生成 (COMPILER_SOURCE_FILE_ATTR) | |
| この属性を生成すると、デバッガーは対応するソース・コードを表示します。 | GENERATE |
| DO_NOT_GENERATE | |
| 未使用ローカル変数の保存 (COMPILER_CODEGEN_UNUSED_LOCAL) | |
| 未使用ローカル変数の保存を要求しない (つまり、読み取らない) 場合、コンパイラーはそれらを最適化し、潜在的にデバッグを変更します。 | PRESERVE |
| OPTIMIZE_OUT | |
| ターゲット Java プラットフォームの定義 (COMPILER_CODEGEN_TARGET_PLATFORM) | |
| バイナリー互換性の理由から、.class ファイルは特定の VM バージョン以降でタグ付けすることができます。 「1.4」ターゲットでは、「1.4」に対する承諾モードにも切り替える必要があります。 | VERSION_1_1 |
| VERSION_1_2 | |
| VERSION_1_3 | |
| VERSION_1_4 | |
| 到達不能コードの報告 (COMPILER_PB_UNREACHABLE_CODE) | |
| 到達不能コードは、オプションで、エラー、警告、または単純な無視を報告することができます。 バイトコード生成は、これを常に最適化します。 | ERROR |
| WARNING | |
| IGNORE | |
| 無効なインポートの報告 (COMPILER_PB_INVALID_IMPORT) | |
| 解決できないインポート・ステートメントには、オプションで、エラー、警告、または無視を報告します。 | ERROR |
| WARNING | |
| IGNORE | |
| パッケージ・デフォルト・メソッドのオーバーライド試行の報告 (COMPILER_PB_OVERRIDING_PACKAGE_DEFAULT_METHOD) | |
| パッケージ・デフォルト・メソッドは、別のパッケージでは可視ではないので、オーバーライドできません。 このオプションを使用可能にすると、コンパイラーはエラーまたは警告としてシグナルを出します。 | ERROR |
| WARNING | |
| IGNORE | |
| コンストラクター名を持つメソッドの報告 (COMPILER_PB_METHOD_WITH_CONSTRUCTOR_NAME) | |
| コンストラクター名でメソッドに名前を付けるのは、一般にあまり良いプログラミングではありません。 このオプションを使用可能にすると、コンパイラーはエラーまたは警告としてシグナルを出します。 | ERROR |
| WARNING | |
| IGNORE | |
| 不適の報告 (COMPILER_PB_DEPRECATION) | |
| 使用可能にすると、コンパイラーは使用すべきでない API の使用にエラーまたは警告としてシグナルを出します。 | ERROR |
| WARNING | |
| IGNORE | |
| 隠れた catch ブロックの報告 (COMPILER_PB_HIDDEN_CATCH_BLOCK) | |
try ステートメントに関して、次のように catch ブロックが他のものを隠すことがあります。
try {
throw new java.io.CharConversionException();
} catch (java.io.CharConversionException e) {
} catch (java.io.IOException e) {}.
このオプションを使用可能にすると、コンパイラーは、検査された例外に対応する、隠れた catch ブロックにエラーまたは警告を出します。 |
ERROR |
| WARNING | |
| IGNORE | |
| 未使用ローカルの報告 (COMPILER_PB_UNUSED_LOCAL) | |
| このオプションを使用可能にすると、コンパイラーは、未使用ローカル変数 (つまり、読み取られない変数) に対して、エラーまたは警告を出します。 | ERROR |
| WARNING | |
| IGNORE | |
| 未使用パラメーターの報告 (COMPILER_PB_UNUSED_PARAMETER) | |
| このオプションを使用可能にすると、コンパイラーは、未使用メソッド・パラメーター (つまり、決して読み取られないパラメーター) に対して、エラーまたは警告を出します。 | ERROR |
| WARNING | |
| IGNORE | |
| 未使用インポートの報告 (COMPILER_PB_UNUSED_IMPORT) | |
| このオプションを使用可能にすると、コンパイラーは、未使用インポート参照に対して、エラーまたは警告を出します。 | ERROR |
| WARNING | |
| IGNORE | |
| アクセス・エミュレーション合成の報告 (COMPILER_PB_SYNTHETIC_ACCESS_EMULATION) | |
| 使用可能にすると、コンパイラーは、エンクロージング型のアクセス不能メンバーにアクセスをエミュレートするときは常に、エラーまたは警告を出します。 そのようなアクセスはパフォーマンス上の問題を含む可能性があります。 | ERROR |
| WARNING | |
| IGNORE | |
| 外部化されていないストリング・リテラルの報告 (COMPILER_PB_NON_NLS_STRING_LITERAL) | |
| 使用可能にすると、コンパイラーは、外部化されていないストリング・リテラル (つまり、//$NON-NLS-<n>$ のタグがないもの) に対して、エラーまたは警告を出します。 | ERROR |
| WARNING | |
| IGNORE | |
| 「assert」ID の使用の報告 (COMPILER_PB_ASSERT_IDENTIFIER) | |
| 使用可能にすると、コンパイラーは、「assert」を ID として使用するときは常に、エラーまたは警告を出します (1.4 では予約キーワード) | ERROR |
| WARNING | |
| IGNORE | |
| ソース互換モードの設定 (COMPILER_SOURCE) | |
| ソースが 1.3 あるいは 1.4 互換かどうかを指定します。 1.4 からは、「assert」は断言サポートで予約されたキーワードです。 また、1.4 モードに切り替えるときは、ターゲット VM レベルは「1.4」に、承諾モードも「1.4」に設定する必要があることに注意してください。 | VERSION_1_3 |
| VERSION_1_4 | |
| 承諾レベルの設定 (COMPILER_COMPLIANCE) | |
| コンパイラー用に承諾レベルを選択します。 「1.3」モードでは、ソースおよびターゲットの設定は、「1.3」レベルを超えてはいけません。 | VERSION_1_3 |
| VERSION_1_4 | |
| コンパイラー単位に報告される問題の最大数 (COMPILER_PB_MAX_PER_UNIT) | |
| 各コンパイル単位に報告される問題の最大数を指定します (最大がゼロの場合は、すべての問題が報告されます)。 | 正の整数。 デフォルト値は 100 |
| 説明 | 値 |
|---|---|
| リソース・コピー制御用のフィルターの指定 (CORE_JAVA_BUILD_RESOURCE_COPY_FILTER) | |
| リソース・コピー処理を制御するフィルターを指定します。 (<name> は、ファイル名パターン (* のワイルドカードのみ可能) あるいは「/」で終わるフォルダーの名前です) | {<name>[,<name>]*}。 デフォルト値は、"" |
| 無効なクラスパスの場合の打ち切り (CORE_JAVA_BUILD_INVALID_CLASSPATH) | |
| クラスパスが無効の場合、ビルダーに打ち切りを命令します | ABORT |
| IGNORE | |
| 説明 | 値 |
|---|---|
| プロジェクト・ビルド順序の計算 (CORE_JAVA_BUILD_ORDER) | |
| JavaCore で、クラスパス前提条件チェーンに基づいてプロジェクト・ビルド順序を強制するかどうかを指示します。 このオプションは計算時に、(プロジェクト参照に基づいて) プラットフォーム・デフォルト順序を引き継ぎます。 | COMPUTE |
| IGNORE | |
| デフォルトのソース・エンコード・フォーマットの指定 (CORE_ENCODING) | |
| コンパイルされたソースのエンコード・フォーマットを取得します。 この設定は読み取り専用で、ResourcesPlugin.getEncoding() と同等です。 | 任意のサポートされるエンコード名。 デフォルト値はプラットフォーム・デフォルト |
| 説明 | 値 |
|---|---|
| 左中括弧の前の改行の挿入 (FORMATTER_NEWLINE_OPENING_BRACE) | |
| 挿入時に、改行が左中括弧の前に挿入されます。それ以外では何も挿入されません。 | INSERT |
| DO_NOT_INSERT | |
| 制御ステートメント内部の改行の挿入 (FORMATTER_NEWLINE_CONTROL) | |
| 挿入時に、改行が } と後続の else、catch、finally の間に挿入されます。 | INSERT |
| DO_NOT_INSERT | |
| ブランク行のクリア (FORMATTER_CLEAR_BLANK_LINES) | |
| すべてを「クリア」すると、ブランク行が除去されます。 1 つを「保存」すると、1 つのみが保存され、他のすべては除去されます。 | CLEAR_ALL |
| PRESERVE_ONE | |
| Else/If 間の改行の挿入 (FORMATTER_NEWLINE_ELSE_IF) | |
| 挿入時に、ブランク行が、1 つの else と 1 つの if が隣接している場合、その間に挿入されます。 挿入しないことを選択すると、else-if は、可能であれば同じ行に保持されます。 | INSERT |
| DO_NOT_INSERT | |
| 空ブロックでの改行の挿入 (FORMATTER_NEWLINE_EMPTY_BLOCK) | |
| 挿入時に、} の後にキーワードがない場合、隣接する { と } の間に改行が挿入されます。 | INSERT |
| DO_NOT_INSERT | |
| 長さを超える行の分割 (FORMATTER_LINE_SPLIT) | |
| 構成可能な長さを超える、長い行の分割を可能にします。 長さ 0 は行分割は使用不可になります。 | 正の整数。 デフォルト値は 80 |
| 割り当てのコンパクト化 (FORMATTER_COMPACT_ASSIGNMENT) | |
| 割り当ては、非対称にフォーマットできます (つまり、「int x= 2;」)。 「正規」のとき、スペースが割り当て演算子の前に挿入されます。 | COMPACT |
| NORMAL | |
| 字下げ文字の定義 (FORMATTER_TAB_CHAR) | |
| タブ文字で字下げするか、スペースで字下げするかを選択します。 | TAB |
| SPACE | |
| スペース字下げの長さの定義 (FORMATTER_TAB_SIZE) | |
| スペースを使用するとき、字下げマークごとに使用するスペース文字の量を設定します。 | 正の整数。 デフォルト値は 4 |
| 説明 | 値 |
|---|---|
| 可視性に依存した完了の活動化 (CODEASSIST_VISIBILITY_CHECK) | |
| 使用可能にすると、不可視であるものは完了しても表示しません (たとえば、スーパー・クラスの private メソッドを見ることはできません)。 | ENABLED |
| DISABLED | |
| 暗黙メンバーの自動修飾 (CODEASSIST_IMPLICIT_QUALIFICATION) | |
| 使用可能にすると、完了時にフィールド暗黙参照とメッセージ式の完了を自動的に修飾します。 | ENABLED |
| DISABLED | |