Esta página de preferências permite configurar as várias configurações relacionadas à compilação, construção e verificação de código fonte Java.
As preferências do compilador são separadas nas seguintes seções:
Opção |
Descrição |
Padrão |
---|---|---|
Nível de Conformidade do Compilador |
Especifica o nível de conformidade do compilador. |
1.4 |
Utilizar Configurações de Conformidade Padrão |
Se ativado, as definições padrões de compatibilidade para o nível de compatibilidade com o compilador são aplicadas. |
Ativado |
Conformidade de Arquivos de Classe Gerados |
Especifica a compatibilidade com o arquivo de classe gerado. |
1.2 |
Compatibilidade com a Origem |
Especifica a compatibilidade do código de origem aceito. |
1.3 |
Não Permitir Identificadores Chamados 'assert' |
Quando ativado, o compilador emite um erro ou um aviso sempre que 'assert' é utilizado como um identificador (palavra-chave reservada no J2SE 1.4). |
Aviso |
Não Permitir Identificadores Chamados 'enum' |
Quando ativado, o compilador emite um erro ou um aviso sempre que 'enum' é utilizado como um identificador (palavra-chave reservada no J2SE 5.0). |
Aviso |
Incluir Atributos de Variável para Arquivos de Classe Gerados |
Se ativado, os atributos de variável são adicionados ao arquivo de classe. Isso ativará os nomes de variáveis locais a serem exibidos no depurador (em locais em que as variáveis são definitivamente atribuídas). O arquivo .class resultante será então maior. |
Ativado |
Incluir Atributos de Número de Linha em Arquivos de Classe Gerados |
Se ativado, informações de número de linha são adicionadas ao arquivo de classe. Isso ativará o destaque de código fonte no depurador. |
Ativado |
Incluir Nome do Arquivo de Origem em Arquivo de Classe Gerado |
Se ativado, o nome do arquivo de origem é adicionado ao arquivo de classe. Isso ativará o depurador para apresentar o código fonte correspondente. |
Ativado |
Preservar Variáveis Locais Não Utilizadas |
Se ativado, variáveis locais não utilizadas (isto é, nunca lidas) não são removidas do arquivo de classe. Se esvaziadas, alterará a depuração. |
Ativado |
Seqüenciar Blocos Finally |
Se ativado, blocos finally serão seqüenciados nos arquivos de classe gerados. Isso afeta o desempenho positivamente, mas pode resultar em arquivos de classe maiores. |
expandAll off |
Opção |
Descrição |
Padrão |
---|---|---|
Número Máximo de Problemas Relatados por Unidade de Compilação |
Especifica quantos problemas devem ser relatados para uma unidade de compilação. |
100 |
Ativar o Uso de Padrões de Exclusão em Pastas de Origem |
Quando desativado, nenhuma entrada no caminho de classe de um projeto pode ser associada a um padrão de exclusão. |
Ativado |
Ativar o Uso de Vários Locais de Saída para Pastas de Origem |
Quando desativado, nenhuma entrada no caminho de classe de um projeto pode ser associada a uma localização de saída específica, impedindo assim o uso de várias localizações de saída. |
Ativado |
Interromper Construção em Erros do Caminho de Construção |
Permitir comutar o construtor para interromper caso o caminho de classe seja inválido. |
Ativado |
Caminho de Construção Incompleto |
Indicar a gravidade do problema relatado quando uma entrada no caminho de classe não existe, não é legítima ou não é visível (ex. um projeto de referência está fechado). |
Error |
Dependências Circulares |
Indicar a gravidade do problema relatado quando um projeto está envolvido em um ciclo. |
Error |
Binários Requeridos Incompatíveis |
Indica a gravidade do problema relatado quando um projeto requer binários incompatíveis. |
Ignorar |
Recursos Duplicados |
Indicar a gravidade do problema relatado quando mais de uma ocorrência de uma recurso será copiada para a localização de saída. |
Aviso |
Limpar Pastas de Saída ao Limpar Projetos |
Indicar se o Construtor Java pode limpar as pastas de saída ao executar operações completas de construção. |
Ativado |
Recursos Filtrados |
Uma lista, separada por vírgulas, de padrões de arquivos que não são copiados para a pasta de saída. |
'' |
Opção |
Descrição |
Padrão |
---|---|---|
Acesso Não Estático a um Membro Estático |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que um campo ou método estático for acessado com um receptor de expressão. Uma referência a um membro estático deve ser qualificada com um nome de tipo. |
Aviso |
Acesso Indireto a um Membro Estático |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que um campo ou um método estático for acessado de modo indireto. Um campo estático de uma interface deve estar qualificado com o nome do tipo da declaração. |
Aviso |
Acesso Não Qualificado a Campo de Instância |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que encontrar um acesso de campo que não está qualificado (por exemplo, não tem um 'this'). |
Ignorar |
Bloco Vazio Não Documentado |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que encontrar uma instrução de bloco vazio sem comentário explicativo. |
Ignorar |
Acesso a um Membro Não Acessível de um Tipo Incluído |
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. Esses acessos podem ter implicações no desempenho. |
Ignorar |
Métodos com um Nome de Construtor |
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. |
Aviso |
Uso de Cadeias Não Externalizadas |
Quando ativado, o compilador emitirá um erro ou aviso para literais de Cadeias não exteriorizadas (isto é, não marcadas com //$NON-NLS-<n>$). |
Ignorar |
Classe Seriável Sem serialVersionUID |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que um tipo que implementa 'java.io.Serializable' não contiver um campo serialVersionUID. |
Aviso |
Designação Sem Efeito (ex.,x = x') |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que uma designação não tiver nenhum efeito (ex. ').x = x'). |
Aviso |
Possível Designação Booleana Acidental (ex. 'if (a = b)') |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que encontrar uma possível designação booleana acidental (ex. 'if (a = b)'). |
Aviso |
'finally' Não É Concluído Normalmente |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que uma instrução 'finally' não for concluída normalmente (por exemplo, contiver uma instrução de retorno). |
Aviso |
Instrução Vazia |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que encontrar uma instrução vazia (por exemplo, um ponto-e-vírgula supérfluo). |
Ignorar |
Utilizando uma Matriz de Caracteres em Concatenação de Cadeia |
Quando ativado, o compilador emitirá um erro ou aviso sempre que uma expressãochar[] for utilizada em concatenações de Cadeia, "hello" + new char[]{'w','o','r','l','d'}
|
Aviso |
Blocos de Captura Ocultos |
Localmente para uma instrução try, alguns blocos de captura podem ocultar outros, por exemplo, 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. |
Aviso |
Declaração de Campo Oculta Outro Campo ou Variável |
Ao ativar esta opção, o compilador emitirá um erro ou um aviso se um campo ocultar outro campo herdado. |
Ignorar |
Declaração de Variável Local Oculta Outro Campo ou Variável |
Ao ativar esta opção, o compilador emitirá um erro ou um aviso se uma declaração de variável local ocultar outro campo ou variável. |
Ignorar |
Incluir parâmetros de método construtor ou setter |
Ao ativar esta opção, o compilador adicionalmente emitirá um erro ou um aviso se um método constructor ou setter ocultar outro campo ou variável. |
expandAll off |
Parâmetro Tipo Oculta Outro Tipo |
Ao ativar esta opção, o compilador emitirá um erro ou um aviso se, por exemplo, um parâmetro de tipo de uma classe interna ocultar um tipo externo. |
Aviso |
Métodos Substituídos mas Não Visíveis no Pacote |
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. |
Aviso |
Método de Conflito ou de Interface com Método 'Object' Protegido |
Quando ativado, o compilador emitirá um erro ou aviso sempre que uma interface definir um método incompatível com um método método de Objeto não-herdado. Até que esse conflito seja resolvido, essa interface não pode ser implementada, ou seja interface I { int clone(); } |
Aviso |
API Reprovada |
Quando ativado, o compilador sinalizará o uso da API reprovada como erro ou aviso. |
Aviso |
Sinalizar o Uso de API Reprovada Dentro de Código Reprovado |
Quando ativado, o compilador sinalizará o uso da API reprovada dentro do código reprovado. A gravidade do problema é controlada com a opção "API Reprovada". |
expandAll off |
Sinalizar método reprovado de substituição ou implementação |
Quando ativado, o compilador sinalizará a substituição ou implementação de um método reprovado. A gravidade do problema é controlada com a opção "API Reprovada". |
expandAll off |
Referência Proibida (Regras de Acesso) |
Quando ativado, o compilador sinalizará uma referência proibida especificada nas regras de acesso. |
Error |
Referência Desencorajada (Regras de Acesso) |
Quando ativado, o compilador sinalizará uma referência desencorajada especificada nas regras de acesso. |
Aviso |
Variável Local Nunca É Lida |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que uma variável local for declarada, mas nunca for utilizada dentro de seu escopo. |
Aviso |
Parâmetro Nunca É Lido |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que um parâmetro for declarado, mas nunca for utilizado dentro de seu escopo. |
Ignorar |
Verificar métodos de substituição e implementação |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que um parâmetro for declarado, mas nunca for utilizado dentro de seu escopo para substituir ou implementar métodos. |
expandAll off |
Importações Não Utilizadas |
Quando ativado, o compilador emitirá um erro ou um aviso para referência de importação não utilizada. |
Aviso |
Membros Locais ou Privados Não Utilizados |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que um membro local ou privado for declarado mas nunca utilizado dentro da mesma unidade. |
Aviso |
Instrução Else Desnecessária |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que encontrar uma instrução else desnecessária (por exemplo, if (condition) return; else doSomething();). |
Ignorar |
Operação de Coerção ou 'instanceof' Desnecessária |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que encontrar uma operação de coerção ou de 'instanceof' desnecessária (por exemplo, if (object instanceof Object) return;). |
Ignorar |
Declaração Desnecessária de Exceção Verificada Lançada |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que encontrar uma declaração de uma exceção lançada desnecessária. |
Ignorar |
Verificar métodos de substituição e implementação |
Quando ativado, o compilador adicionalmente emitirá um erro ou um aviso sempre que encontrar uma declaração de uma exceção lançada desnecessária em um método de substituição ou de implementação. |
expandAll off |
Operação de Tipo Genérico Não Verificada |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que encontrar uma declaração de uma operação de tipo genérico não verificada. |
Aviso |
Parâmetro de Tipo Genérico Utilizado com uma Ligação de Tipo Final: |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que encontrar um ligação de tipo envolvendo um tipo final. |
Aviso |
Correspondência de Tipo Inexato para Argumentos vararg: |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que encontrar uma declaração de uma correspondência de tipo exato para argumentos vararg. |
Aviso |
Conversões de Boxing e de Unboxing |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que encontrar uma conversão de boxing ou de unboxing. Autoboxing pode afetar o desempenho de forma negativa. |
Ignorar |
Anotação de '@Override' Ausente |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que encontrar um método substituindo outro método implementado e a anotação @Override estiver ausente. |
Ignorar |
Anotação '@Deprecated' Ausente |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que encontrar um tipo reprovado sem anotação @Deprecated adicional. |
Ignorar |
Anotação Utilizada Como uma Superinterface: |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que encontrar um tipo que implementa uma anotação. Embora possível, essa não é considerada uma boa prática. |
Aviso |
Nem Todas as Constantes enum Abrangidas em 'switch': |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que encontrar uma declaração switch que não contém instruções de caso para cada constante enum do enum referido. |
Ignorar |
Tokens de Aviso Não Identificados em '@SuppressWarnings': |
Quando ativado, o compilador emitirá um erro ou um aviso sempre que encontrar um token de aviso não identificado em uma anotação @SuppressWarnings. |
Aviso |
Ativar anotações '@SuppressWarnings' |
Quando ativado, o compilador processará anotações '@SuppressWarning'. |
Ativado |
Construindo um Programa Java
Trabalhando com Caminhos de
Construção
Trabalhando com JREs
Preferências de Variáveis Caminho de Classe
Propriedades do Caminho de Construção Java