Manipular opciones del Núcleo de JDT

Puede accederse a las opciones del Núcleo de JDT desde algunas API. Todas estas API se encuentran en JavaCore. Sólo son necesarios cuatro métodos para manipular las opciones:

Las opciones se manipulan como tabla de hash de todas las opciones configurables conocidas con sus valores. Se han definido constantes de ayuda en JavaCore para cada ID de opción y sus posibles valores de constante.

Si desea configurar el Núcleo de JDT sólo con sus opciones, el siguiente fragmento de código debería ser suficiente:

   // Obtener las opciones actuales
   Hashtable options = JavaCore.getDefaultOptions();
   
   // Cambiar el valor de una opción
   options.put(JavaCore.COMPILER_PB_DEPRECATION, JavaCore.ERROR);
   
   // Establecer las opciones nuevas
   JavaCore.setOptions(options);
Si desea conservar las opciones actuales y modificar sólo una de ellas:
   // Obtener las opciones actuales
   Hashtable options = JavaCore.getOptions();
   
   // Cambiar el valor de una opción
   options.put(JavaCore.COMPILER_PB_DEPRECATION, JavaCore.ERROR);
   
   // Establecer las opciones nuevas
   JavaCore.setOptions(options);

Descripciones de las opciones del Núcleo de JDT

En las tablas que siguen se encuentran todas las opciones del Núcleo de JDT. Todas las tablas tienen la misma organización con el ID de opción entre paréntesis y el valor por omisión en negrita cursiva.

Categoría de opciones

Opciones de compilador

Descripción Valores
Generar atributo de depuración de variable local ( (COMPILER_LOCAL_VARIABLE_ATTR)
Si se genera, este atributo permite visualizar los nombres de variables locales en el depurador, sólo en los lugares en los que las variables estén asignadas claramente (el archivo .class será más grande) GENERATE
DO_NOT_GENERATE
Generar atributo de depuración de número de línea ( (COMPILER_LINE_NUMBER_ATTR)
Si se genera, este atributo permite resaltar el código fuente en el depurador (el archivo .class será más grande) GENERATE
DO_NOT_GENERATE
Generar atributo de depuración de código fuente (COMPILER_SOURCE_FILE_ATTR)
Si se genera, este atributo permite al depurador presentar el código fuente correspondiente. GENERATE
DO_NOT_GENERATE
Conservar variables locales no utilizadas (COMPILER_CODEGEN_UNUSED_LOCAL)
A menos que se ha haya solicitado conservar las variables locales no utilizadas, (es decir, que no se han leído nunca), el compilador las optimizará, alterando potencialmente la depuración. PRESERVE
OPTIMIZE_OUT
Definir plataforma Java destino (COMPILER_CODEGEN_TARGET_PLATFORM)
Por razones de compatibilidad binaria, los archivos .class pueden codificarse con determinadas versiones de VM y posteriores. Tenga en cuenta que el destino "1.4" hace necesario que el usuario conmute también la modalidad de conformidad a "1.4". VERSION_1_1
VERSION_1_2
VERSION_1_3
VERSION_1_4
Notificar código inalcanzable (COMPILER_PB_UNREACHABLE_CODE)
El código inalcanzable puede notificarse opcionalmente como un error, un aviso o simplemente pasarse por alto. La generación de bytecode lo optimizará en todos los casos. ERROR
WARNING
IGNORE
Notificar importación no válida (COMPILER_PB_INVALID_IMPORT)
Una sentencia de importación que no puede resolverse puede notificarse opcionalmente como un error, un aviso o pasarse por alto. ERROR
WARNING
IGNORE
Notificar intento de alterar temporalmente método por omisión de paquete (COMPILER_PB_OVERRIDING_PACKAGE_DEFAULT_METHOD)
Un método de paquete por omisión no es visible en otro paquete, y por tanto no puede alterarse temporalmente. Si se habilita esta opción, el compilador indicará este tipo de escenario como error o aviso. ERROR
WARNING
IGNORE
Notificar método con nombre de constructor (COMPILER_PB_METHOD_WITH_CONSTRUCTOR_NAME)
Denominar un método con un nombre de constructor se considera generalmente una programación de estilo pobre. Si se habilita esta opción, el compilador indicará este tipo de escenario como error o aviso. ERROR
WARNING
IGNORE
Notificar obsolescencia (COMPILER_PB_DEPRECATION)
Si se habilita esta opción, el compilador indicará la utilización de API obsoletas como error o aviso. ERROR
WARNING
IGNORE
Notificar bloque catch oculto (COMPILER_PB_HIDDEN_CATCH_BLOCK)
Localmente con respecto a una sentencia try, algunos bloques catch pueden ocultar a otros, como por ejemplo
   try {
      throw new java.io.CharConversionException();
   } catch (java.io.CharConversionException e) {
   } catch (java.io.IOException e) {}.
Si se habilita esta opción, el compilador emitirá un error o aviso para bloques catch ocultos correspondientes a excepciones comprobadas
ERROR
WARNING
IGNORE
Notificar variable local no utilizada (COMPILER_PB_UNUSED_LOCAL)
Si se habilita esta opción, el compilador emitirá un error o aviso para las variables locales no utilizadas (es decir, variables en las que no se ha leído nunca) ERROR
WARNING
IGNORE
Notificar parámetro no utilizado (COMPILER_PB_UNUSED_PARAMETER)
Si se habilita esta opción, el compilador emitirá un error o aviso para los parámetros de método no utilizados (es decir, parámetros en los que no se ha leído nunca) ERROR
WARNING
IGNORE
Notificar importación no utilizada (COMPILER_PB_UNUSED_IMPORT)
Si se habilita esta opción, el compilador emitirá un error o aviso para las referencias a importaciones no utilizadas ERROR
WARNING
IGNORE
Notificar emulación de acceso sintética (COMPILER_PB_SYNTHETIC_ACCESS_EMULATION)
Si se habilita esta opción, el compilador emitirá un error o aviso siempre que emule el acceso a un miembro no accesible de un tipo delimitador. Tales accesos pueden tener implicaciones de rendimiento. ERROR
WARNING
IGNORE
Notificar literal de serie no externalizado (COMPILER_PB_NON_NLS_STRING_LITERAL)
Si se habilita esta opción, el compilador emitirá un error o aviso para literales de serie no externalizados (es decir, no codificados con //$NON-NLS-<n>$) ERROR
WARNING
IGNORE
Notificar utilización de identificador 'assert' (COMPILER_PB_ASSERT_IDENTIFIER)
Si está habilitada, el compilador emitirá un error o aviso siempre que se utilice 'assert' como identificador (palabra clave reservada en 1.4) ERROR
WARNING
IGNORE
Establecer modalidad de compatibilidad de código fuente (COMPILER_SOURCE)
Especifique si el código fuente es compatible con 1.3 o 1.4. A partir de 1.4, 'assert' es una palabra clave reservada para el soporte de declaración. Tenga en cuenta también que, al conmutar a la modalidad 1.4, el nivel de VM destino debe establecerse en "1.4" y la modalidad de conformidad debe ser "1.4". VERSION_1_3
VERSION_1_4
Establecer nivel de conformidad (COMPILER_COMPLIANCE)
Seleccione el nivel de conformidad del compilador. En la modalidad "1.3", los valores origen y destino no deben ser superiores al nivel "1.3". VERSION_1_3
VERSION_1_4
Número máximo de problemas reportados por unidad de compilación (COMPILER_PB_MAX_PER_UNIT)
Especifique el número máximo de problemas notificados en cada unidad de compilación (si el máximo es cero, se notifican todos los problemas). un entero positivo.
El valor por omisión es 100

Opciones de constructor

Descripción Valores
Especificar filtros para control de copia de recursos (CORE_JAVA_BUILD_RESOURCE_COPY_FILTER)
Especifique filtros para controlar el proceso de copia de recursos. (<nombre> es un patrón de nombre de archivo (sólo se permiten los comodines *) o el nombre de una carpeta que termine en '/') {<nombre>[,<nombre>]*}.
El valor por omisión es ""
Cancelar si la vía de acceso de clases no es válida (CORE_JAVA_BUILD_INVALID_CLASSPATH)
Se indica al constructor que cancele si la vía de acceso de clases no es válida. ABORT
IGNORE

Opciones de JavaCore

Descripción Valores
Calcular orden de construcción de proyecto (CORE_JAVA_BUILD_ORDER)
Indica si JavaCore debe obligar a que el orden de construcción del proyecto se base en en la cadena de prerrequisito de la vía de acceso de clases. Si se solicita calcular, esta opción adopta el orden por omisión de la plataforma (basado en las referencias del proyecto). COMPUTE
IGNORE
Especificare formato de codificación de código fuente por omisión (CORE_ENCODING)
Obtener el formato de codificación para los recursos compilados. Este valor es de sólo lectura, y es equivalente a ResourcesPlugin.getEncoding(). cualquiera de los nombres de codificación soportados.
El valor por omisión es el de la plataforma

Opciones de formateador

Descripción Valores
Insertar línea nueva antes de llave de apertura (FORMATTER_NEWLINE_OPENING_BRACE)
Si se elige INSERT (Insertar), se inserta una línea nueva antes de una llave de apertura; en caso contrario, no se inserta nada INSERT
DO_NOT_INSERT
Insertar línea nueva dentro de sentencia de control (FORMATTER_NEWLINE_CONTROL)
Si se elige INSERT (Insertar), se inserta una línea nueva entre } y else, catch, finally INSERT
DO_NOT_INSERT
Borrar líneas en blanco (FORMATTER_CLEAR_BLANK_LINES)
Si se elige CLEAR ALL (Borrar todo), se eliminan todas las líneas en blanco. Si se elige PRESERVE ONE (Conservar una), se eliminan todas las líneas menos una. CLEAR_ALL
PRESERVE_ONE
Insertar línea nueva entre Else/If (FORMATTER_NEWLINE_ELSE_IF)
Si se elige INSERT (Insertar), se inserta una línea en blanco entre una sentencia else y una sentencia if cuando estas dos sentencias son contiguas. Si se elige no insertar, else-if se mantendrán en la misma línea si es posible. INSERT
DO_NOT_INSERT
Insertar línea nueva en bloque vacío (FORMATTER_NEWLINE_EMPTY_BLOCK)
Si se elige INSERT (Insertar), se insertará una interrupción de línea entre dos llaves { y } contiguas, si no hay ninguna palabra clave a continuación de la llave }. INSERT
DO_NOT_INSERT
Dividir líneas que sobrepasan la longitud (FORMATTER_LINE_SPLIT)
Permitir la división de líneas largas (que superen la longitud configurable). La longitud 0 inhabilitará la división de línea un entero positivo.
El valor por omisión es 80
Compactar asignación (FORMATTER_COMPACT_ASSIGNMENT)
Las asignaciones pueden formatearse asimétricamente, por ejemplo 'int x= 2;'; en el caso de Normal, se inserta un espacio antes del operador de asignación COMPACT
NORMAL
Definir carácter de sangrado (FORMATTER_TAB_CHAR)
Puede optar por sangrar con caracteres de tabulación o con espacios TAB
SPACE
Definir longitud de espacio de sangrado (FORMATTER_TAB_SIZE)
Si utiliza espacios, establezca la cantidad de caracteres de espacio que deben utilizarse para cada marca de sangrado. un entero positivo.
El valor por omisión es 4

Opciones de asistencia de código

Descripción Valores
Activar conclusión sensible a visibilidad (CODEASSIST_VISIBILITY_CHECK)
Si está activa, la conclusión no muestra lo que el usuario no puede ver (por ejemplo, no puede ver los métodos privados de una superclase). ENABLED
DISABLED
Calificación automática de miembros implícitos (CODEASSIST_IMPLICIT_QUALIFICATION)
Si está activa, la conclusión califica automáticamente la conclusión en referencias de campo implícitas y expresiones de mensajes. ENABLED
DISABLED

 Copyright IBM Corporation y otros 2000, 2002. Reservados todos los derechos.