Manipulando Opções do Núcleo do JDT

As opções do Núcleo do JDT são acessíveis em poucas APIs. Todas essas APIs estão localizadas em JavaCore. São necessários apenas quatro métodos para manipular as opções:

As opções são manipuladas como uma tabela de hashing de todas as opções configuráveis conhecidas com seus valores. As constantes auxiliares foram definidas em JavaCore para cada ID de opção e seus valores de constante possíveis.

Para configurar o Núcleo do JDT apenas com suas opções, o seguinte fragmento de código funcionaria:

   // Obter as opções atuais
   Opções da tabela de hashing = JavaCore.getDefaultOptions();
   
   // Alterar o valor de uma opção
   options.put(JavaCore.COMPILER_PB_DEPRECATION, JavaCore.ERROR);
   
   // Definir as novas opções
   JavaCore.setOptions(options);
Para manter as opções atuais e modificar apenas uma delas:
   // Obter as opções atuais
   Opções da tabela de hashing = JavaCore.getOptions();
   
   // Alterar o valor de uma opção
   options.put(JavaCore.COMPILER_PB_DEPRECATION, JavaCore.ERROR);
   
   // Definir as novas opções
   JavaCore.setOptions(options);

Descrições das Opções do Núcleo do JDT

A lista de todas as opções do Núcleo do JDT estão nas tabelas a seguir. Todas as tabelas possuem a mesma organização com o id da opção entre parênteses e o valor padrão impresso em itálico negrito.

Categoria das Opções

Opções do Compilador

Descrição Valores
Gerando Atributo de Depuração da Variável Local (COMPILER_LOCAL_VARIABLE_ATTR)
Quando gerado, esse atributo ativará os nomes das variáveis locais para serem exibidos no depurador, apenas em locais em que as variáveis são definitivamente atribuídas (o arquivo .class será então maior) GERAR
NÃO_GERAR
Gerando Atributo de Depuração do Número de Linha (COMPILER_LINE_NUMBER_ATTR)
Quando gerado, esse atributo ativará o destaque de código fonte no depurador (o arquivo .class será então maior). GERAR
NÃO_GERAR
Gerando Atributo de Depuração da Origem (COMPILER_SOURCE_FILE_ATTR)
Quando gerado, esse atributo ativará o depurador para apresentar o código fonte correspondente. GERAR
NÃO_GERAR
Preservando Variáveis Locais Não Utilizadas (COMPILER_CODEGEN_UNUSED_LOCAL)
A não ser que solicitado para preservar as variáveis locais não utilizadas (isto é, nunca lidas), o compilador as otimizará, alterando a depuração. PRESERVAR
OTIMIZAR
Definindo a Plataforma Java de Destino (COMPILER_CODEGEN_TARGET_PLATFORM)
Por motivo de compatibilidade binária, os arquivos .class podem ser marcados com certas versões da VM e posteriores. Observe que o destino "1.4" requer que o modo de compatibilidade também seja alternado para "1.4". VERSÃO_1_1
VERSÃO_1_2
VERSÃO_1_3
VERSÃO_1_4
Relatando Código Inatingível (COMPILER_PB_UNREACHABLE_CODE)
O código inatingível pode, opcionalmente, ser relatado como erro, aviso ou simplesmente ser ignorado. A geração de código de bytes sempre o otimizará. ERRO
AVISO
IGNORAR
Relatando Importação Inválida (COMPILER_PB_INVALID_IMPORT)
Uma instrução de importação que não pode ser resolvida pode, opcionalmente, ser relatada como erro, aviso ou ser ignorada. ERRO
AVISO
IGNORAR
Relatando Tentativa de Substituir Método Padrão do Pacote (COMPILER_PB_OVERRIDING_PACKAGE_DEFAULT_METHOD)
Um método padrão de pacote não é visível em um pacote diferente e, portanto, não pode ser substituído. Ao ativar esta opção, o compilador sinalizará esse cenário como erro ou aviso. ERRO
AVISO
IGNORAR
Relatando Método com o Nome do Construtor (COMPILER_PB_METHOD_WITH_CONSTRUCTOR_NAME)
A nomeação de um método com um nome de construtor geralmente é considerado programação de estilo inadequado. Ao ativar esta opção, o compilador sinalizará esse cenário como erro ou aviso. ERRO
AVISO
IGNORAR
Relatando Desaprovação (COMPILER_PB_DEPRECATION)
Quando ativado, o compilador sinalizará o uso da API reprovada como erro ou aviso. ERRO
AVISO
IGNORAR
Relatando Bloco de Captura Oculto (COMPILER_PB_HIDDEN_CATCH_BLOCK)
Localmente para uma instrução try, alguns blocos de captura podem ocultar outros, por ex.,
   try {
      throw new java.io.CharConversionException();
   } catch (java.io.CharConversionException e) {
   } catch (java.io.IOException e) {}.
Ao ativar esta opção, o compilador emitirá um erro ou um aviso para blocos de captura ocultos correspondentes a exceções verificadas
ERRO
AVISO
IGNORAR
Relatando Local Não Utilizado (COMPILER_PB_UNUSED_LOCAL)
Quando ativado, o compilador emitirá um erro ou um aviso para variáveis locais não utilizadas (isto é, variáveis nunca lidas) ERRO
AVISO
IGNORAR
Relatando Parâmetro Não Utilizado (COMPILER_PB_UNUSED_PARAMETER)
Quando ativado, o compilador emitirá um erro ou um aviso para parâmetros de método não utilizados (isto é, parâmetros nunca lidos) ERRO
AVISO
IGNORAR
Relatando Importação Não Utilizada (COMPILER_PB_UNUSED_IMPORT)
Quando ativado, o compilador emitirá um erro ou um aviso para referência de importação não utilizada ERRO
AVISO
IGNORAR
Relatando Emulação de Acesso Sintético (COMPILER_PB_SYNTHETIC_ACCESS_EMULATION)
Quando ativado, o compilador emitirá um erro ou um aviso sempre que emular o acesso a um membro não acessível de um tipo de inclusão. Esse acesso pode ter implicações no desempenho. ERRO
AVISO
IGNORAR
Relatando Literais de Cadeias Não Externalizadas (COMPILER_PB_NON_NLS_STRING_LITERAL)
Quando ativado, o compilador emitirá um erro ou um aviso para literais de cadeias não externalizadas (isto é, não marcadas com //$NON-NLS-<n>$) ERRO
AVISO
IGNORAR
Relatando o Uso do Identificador 'assert' (COMPILER_PB_ASSERT_IDENTIFIER)
Quando ativado, o compilador emitirá um erro ou um aviso sempre que 'assert' for utilizado como identificador (palavra-chave reservada no 1.4) ERRO
AVISO
IGNORAR
Definindo o Modo de Compatibilidade de Origem (COMPILER_SOURCE)
Especifica se a origem é compatível com 1.3 ou 1.4. Da 1.4 para frente, 'assert' é uma palavra-chave reservada para suporte de asserção. Observe também, que ao alternar para o modo 1.4, o nível da VM de destino deve ser definido para "1.4" e o modo de compatibilidade deve ser "1.4". VERSÃO_1_3
VERSÃO_1_4
Definindo o Nível de Compatibilidade (COMPILER_COMPLIANCE)
Selecione o nível de compatibilidade do compilador. No modo "1.3", as definições de origem e de destino não devem ultrapassar o nível "1.3". VERSÃO_1_3
VERSÃO_1_4
Número máximo de problemas relatados por unidade de compilação (COMPILER_PB_MAX_PER_UNIT)
Especifique o número máximo de problemas relatados em cada unidade de compilação (se o máximo for zero, todos os problemas serão relatados). um inteiro positivo.
O valor padrão é 100

Opções do Construtor

Descrição Valores
Especificando Filtros para Controle de Cópia de Recurso (CORE_JAVA_BUILD_RESOURCE_COPY_FILTER)
Especifique filtros para controlar o processo de cópia do recurso. (<name> é um padrão de nome de arquivo (são permitidos apenas os caracteres curinga *) ou o nome de uma pasta que termina com '/') {<name>[,<name>]*}.
O valor padrão é ""
Abortar se o Classpath for Inválido (CORE_JAVA_BUILD_INVALID_CLASSPATH)
Instrua o construtor para abortar se o classpath for inválido ABORTAR
IGNORAR

Opções do JavaCore

Descrição Valores
Calculando A Ordem de Construção do Projeto (CORE_JAVA_BUILD_ORDER)
Indique se o JavaCore deve forçar para que a ordem de construção do projeto seja baseada na cadeia de pré-requisitos do classpath. Ao solicitar o cálculo, é assumida a ordem padrão da plataforma (com base nas referências do projeto). CALCULAR
IGNORAR
Especificar o Formato de Codificação de Origem Padrão (CORE_ENCODING)
Obtenha o formato de codificação das origens compiladas. Esta definição é somente leitura, equivalente a ResourcesPlugin.getEncoding(). qualquer um dos nomes de codificação suportados.
O valor padrão é o padrão da plataforma

Opções do Formatador

Descrição Valores
Inserindo Nova Linha Antes da Chave de Abertura (FORMATTER_NEWLINE_OPENING_BRACE)
Ao Inserir, uma nova linha é inserida antes de uma chave de abertura, caso contrário, nada é inserido INSERIR
NÃO_INSERIR
Inserindo Nova Linha Dentro da Instrução de Controle (FORMATTER_NEWLINE_CONTROL)
Ao Inserir, uma nova linha é inserida entre a } e else, catch, finally a seguir INSERIR
NÃO_INSERIR
Limpando Linhas em Branco (FORMATTER_CLEAR_BLANK_LINES)
Ao Limpar tudo, todas as linhas em branco são removidas. Ao Preservar uma, apenas uma é mantida e as outras são removidas. LIMPAR_TUDO
PRESERVAR_UMA
Inserindo Nova Linha Entre Else/If (FORMATTER_NEWLINE_ELSE_IF)
Ao Inserir, uma linha em branco é inserida entre um else e um if, quando contíguos. Ao escolher para não inserir, else-if serão mantidos na mesma linha, quando possível. INSERIR
NÃO_INSERIR
Inserindo Nova Linha em Bloco Vazio (FORMATTER_NEWLINE_EMPTY_BLOCK)
Ao inserir, uma quebra de linha é inserida entre { e } contíguas, se } não vier seguida de palavra-chave. INSERIR
NÃO_INSERIR
Dividindo Linhas com Comprimento Excedente (FORMATTER_LINE_SPLIT)
Ative a divisão de linhas longas (que excedem o comprimento configurável). O comprimento 0 desativará a divisão de linhas um inteiro positivo.
O valor padrão é 80
Compactando a Atribuição (FORMATTER_COMPACT_ASSIGNMENT)
As atribuições podem ser formatadas assimetricamente, por ex., 'int x= 2;', quando Normal, é inserido um espaço antes do operador de atribuição COMPACTAR
NORMAL
Definindo o Caractere de Alinhamento (FORMATTER_TAB_CHAR)
Escolha alinhar com caracteres tab ou espaços TAB
ESPAÇO
Definindo o Comprimento do Alinhamento de Espaços (FORMATTER_TAB_SIZE)
Ao utilizar espaços, defina a quantidade de caracteres de espaço a ser utilizada para cada marca de alinhamento. um inteiro positivo.
O valor padrão é 4

Opções do CodeAssist

Descrição Valores
Ativar Conclusão Sensível à Visibilidade (CODEASSIST_VISIBILITY_CHECK)
Quando ativa, a conclusão não responde ao que não pode ser visto (por ex., você não pode ver métodos particulares de uma superclasse). ATIVADO
DESATIVADO
Qualificação Automática de Membros Implícitos (CODEASSIST_IMPLICIT_QUALIFICATION)
Quando ativa, a conclusão qualifica automaticamente a conclusão em referências de campo e expressões de mensagens implícitas. ATIVADO
DESATIVADO

 Copyright IBM Corporation e outros 2000, 2002. Todos os Direitos Reservados.