JDT Core options

JDT Core options control the behavior of core features such as the Java compiler, code formatter, code assist, and other core behaviors.  The APIs for accessing the options are defined in JavaCore.  Options can be accessed as a group as follows:

Options can also be accessed individually by a string name.

Options that can configure the severity of a problem can also be found.

Options are stored as a hash table of all known configurable options with their values. Helper constants have been defined on JavaCore for each option ID and its possible constant values.

The following code fragment restores the value of all core options to their defaults except for one (COMPILER_PB_DEPRECATION), which is set specifically.


   // Get the default 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);

The following code fragment keeps the value of the current options and modifies only one (COMPILER_PB_DEPRECATION):


   // 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);

Project specific options

The values of options can be overridden per project using protocol in IJavaProject.

The following code fragment retrieves the value of an option (COMPILER_PB_DEPRECATION) for a specific project in two different ways.  The boolean parameter controls whether only the project-specific options should be returned in a query or whether the project's option values should be merged with the values in JavaCore.


   // Get the project
   IJavaProject project = ...;

   // See if the value of an option has been set in this project
   String value = project.getOption(JavaCore.COMPILER_PB_DEPRECATION, false);
   if (value == null) {
     // no specific option was set on the project
     ...
   }
   
   // Get the value of an option from this project.  Use the value from 
   // JavaCore value if none is specified for the project
   String value = project.getOption(JavaCore.COMPILER_PB_DEPRECATION, true);

JDT Core options descriptions

The following tables describe the available JDT Core options.  The option id is shown in parentheses and the default value is shown in bold italics.

Options categories

Compiler options

Description Values
Annotation Based Null Analysis (COMPILER_ANNOTATION_NULL_ANALYSIS)
This option controls whether the compiler will use null annotations for improved analysis of (potential) null references.

When enabled, the compiler will interpret the annotation types defined using COMPILER_NONNULL_ANNOTATION_NAME and COMPILER_NULLABLE_ANNOTATION_NAME as specifying whether or not a given type includes the value null.

The effect of these analyses is further controlled by the options COMPILER_PB_NULL_SPECIFICATION_VIOLATION, COMPILER_PB_NULL_ANNOTATION_INFERENCE_CONFLICT, COMPILER_PB_NULL_UNCHECKED_CONVERSION, COMPILER_PB_REDUNDANT_NULL_ANNOTATION, COMPILER_PB_MISSING_NONNULL_BY_DEFAULT_ANNOTATION, COMPILER_PB_SYNTACTIC_NULL_ANALYSIS_FOR_FIELDS, COMPILER_PB_NONNULL_PARAMETER_ANNOTATION_DROPPED, and COMPILER_INHERIT_NULL_ANNOTATIONS.

ENABLED
DISABLED
Inline JSR Bytecode Instruction (COMPILER_CODEGEN_INLINE_JSR_BYTECODE)
When enabled in conjunction with a Java target platform lesser than or equal to "1.4", the compiler will no longer generate JSR instructions, but rather inline corresponding subroutine code sequences (mostly corresponding to try finally blocks). The generated code will thus get bigger, but will load faster on virtual machines since the verification process is then much simpler. This mode is adding support for the Java Specification Request 202 to pre-"1.5" Java target platforms.
For a Java target platform greater than or equal to "1.5", the inlining of the JSR bytecode instruction is mandatory and this option is ignored.
ENABLED
DISABLED
Generating Method Parameters Attribute (COMPILER_CODEGEN_METHOD_PARAMETERS_ATTR)
When generated, this attribute will enable information about the formal parameters of a method (such as their names) to be accessed from reflection libraries, annotation processing, code weaving, and in the debugger, from platform target level 1.8 and later. GENERATE
DO_NOT_GENERATE
Setting Target Java Platform (COMPILER_CODEGEN_TARGET_PLATFORM)
For binary compatibility reason, .class files are tagged with VM versions that are defined for each level of the reference specification. The target Java platform specifies the minimum runtime level required to execute the generated class files.
The compliance, source and target levels must satisfy a set of constraints summarized in a compatibility table below.
VERSION_1_1
VERSION_1_2
VERSION_1_3
VERSION_1_4
VERSION_1_5
VERSION_1_6
VERSION_1_7
VERSION_1_8
VERSION_9
VERSION_10
VERSION_11
VERSION_12
VERSION_13
VERSION_14
VERSION_15
VERSION_CLDC_1_1
Preserving Unused Local Variables (COMPILER_CODEGEN_UNUSED_LOCAL)
Unless requested to preserve unused local variables (i.e. never read), the compiler will optimize them out, potentially altering debugging. PRESERVE
OPTIMIZE_OUT
Setting Compliance Level (COMPILER_COMPLIANCE)
Select the compliance level for the compiler, which will then behave according to the said level of the reference specification.
The compliance, source and target levels must satisfy a set of constraints summarized in a compatibility table below.
VERSION_1_3
VERSION_1_4
VERSION_1_5
VERSION_1_6
VERSION_1_7
VERSION_1_8
VERSION_9
VERSION_10
VERSION_11
VERSION_12
VERSION_13
VERSION_14
VERSION_15
Javadoc Comment Support (COMPILER_DOC_COMMENT_SUPPORT)
When this support is disabled, the compiler will ignore all javadoc problems options settings and will not report any javadoc problem. It will also not find any reference in javadoc comment and DOM AST Javadoc node will be only a flat text instead of having structured tag elements. ENABLED
DISABLED
Inheritance of Null Annotations (COMPILER_INHERIT_NULL_ANNOTATIONS)
When enabled, the compiler will check for each method without any explicit null annotations (see COMPILER_ANNOTATION_NULL_ANALYSIS): If it overrides a method which has null annotations, it will treat the current method as if it had the same annotations as the overridden method.

Annotation inheritance will use the effective nullness of the overridden method after transitively applying inheritance and after applying any default nullness (see COMPILER_NONNULL_BY_DEFAULT_ANNOTATION_NAME) at the site of the overridden method.

If different implicit null annotations (from a nonnull default and/or overridden methods) are applicable to the same type in a method signature, this is flagged as an error and an explicit null annotation must be used to disambiguate.

ENABLED
DISABLED
Generating Line Number Debug Attribute (COMPILER_LINE_NUMBER_ATTR)
When generated, this attribute will enable source code highlighting in the debugger (.class file is then bigger). GENERATE
DO_NOT_GENERATE
Generating Local Variable Debug Attribute (COMPILER_LOCAL_VARIABLE_ATTR)
When generated, this attribute will enable local variable names to be displayed in the debugger, only in places where variables are definitely assigned (.class file is then bigger). GENERATE
DO_NOT_GENERATE
Name of Annotation Type for Non-Null Types (COMPILER_NONNULL_ANNOTATION_NAME)
This option defines a fully qualified Java type name that the compiler may use to perform special null analysis.

If the annotation specified by this option is applied to a type in a method signature or variable declaration, this will be interpreted as a specification that null is not a legal value in that position. Currently supported positions are: method parameters, method return type and local variables.

For values declared with this annotation, the compiler will never trigger a null reference diagnostic (as controlled by COMPILER_PB_POTENTIAL_NULL_REFERENCE and COMPILER_PB_NULL_REFERENCE), because the assumption is made that null will never occur at runtime in these positions.

The compiler may furthermore check adherence to the null specification as further controlled by COMPILER_PB_NULL_SPECIFICATION_VIOLATION, COMPILER_PB_NULL_ANNOTATION_INFERENCE_CONFLICT and COMPILER_PB_NULL_UNCHECKED_CONVERSION.

This option only has an effect if the option COMPILER_ANNOTATION_NULL_ANALYSIS is enabled.

The qualified name of a Java annotation type
Default is: org.eclipse.jdt.annotation.NonNull
Names of Secondary Annotation Types for Non-Null Types (COMPILER_NONNULL_ANNOTATION_SECONDARY_NAMES)
This option defines a comma-separated list of fully qualified Java type names that the compiler may use to perform special null analysis.

The annotation types identified by the names in this list are interpreted in the same way as the annotation identified by {@link #COMPILER_NONNULL_ANNOTATION_NAME}. The intention is to support libraries using different sets of null annotations, in addition to those used by the current project. Secondary null annotations should not be used in the project's own source code.

JDT will never actively use any secondary annotation names from this list, i.e., inferred null annotations and content assist proposals mentioning null annotations are always rendered using the primary name from COMPILER_NONNULL_ANNOTATION_NAME.

This option only has an effect if the option COMPILER_ANNOTATION_NULL_ANALYSIS is enabled.

The qualified name of a Java annotation type
Default is: ""
Name of Annotation Type for Nullable Types (COMPILER_NULLABLE_ANNOTATION_NAME)
This option defines a fully qualified Java type name that the compiler may use to perform special null analysis.

If the annotation specified by this option is applied to a type in a method signature or variable declaration, this will be interpreted as a specification that null is a legal value in that position. Currently supported positions are: method parameters, method return type and local variables.

If a value whose type is annotated with this annotation is dereferenced without checking for null, the compiler will trigger a diagnostic as further controlled by COMPILER_PB_POTENTIAL_NULL_REFERENCE.

The compiler may furthermore check adherence to the null specification as further controlled by COMPILER_PB_NULL_SPECIFICATION_VIOLATION, COMPILER_PB_NULL_ANNOTATION_INFERENCE_CONFLICT and COMPILER_PB_NULL_UNCHECKED_CONVERSION.

This option only has an effect if the option COMPILER_ANNOTATION_NULL_ANALYSIS is enabled.

The qualified name of a Java annotation type
Default is: org.eclipse.jdt.annotation.Nullable
Names of Secondary Annotation Types for Nullable Types (COMPILER_NULLABLE_ANNOTATION_SECONDARY_NAMES)
This option defines a comma-separated list of fully qualified Java type names that the compiler may use to perform special null analysis.

The annotation types identified by the names in this list are interpreted in the same way as the annotation identified by COMPILER_NULLABLE_ANNOTATION_NAME. The intention is to support libraries using different sets of null annotations, in addition to those used by the current project. Secondary null annotations should not be used in the project's own source code.

JDT will never actively use any secondary annotation names from this list, i.e., inferred null annotations and content assist proposals mentioning null annotations are always rendered using the primary name from COMPILER_NULLABLE_ANNOTATION_NAME.

This option only has an effect if the option COMPILER_ANNOTATION_NULL_ANALYSIS is enabled.

The qualified name of a Java annotation type
Default is: ""
Name of Annotation Type to specify a nullness default for unannotated types. (COMPILER_NONNULL_BY_DEFAULT_ANNOTATION_NAME)
This option defines a fully qualified Java type name that the compiler may use to perform special null analysis.

If the annotation is applied without an argument, all unannotated types in method signatures within the annotated element will be treated as if they were specified with the non-null annotation (see COMPILER_NONNULL_ANNOTATION_NAME).

If the annotation is applied with the constant false as its argument, all corresponding defaults specified using this annotation at outer scopes will be canceled for the annotated element.

This option only has an effect if the option COMPILER_ANNOTATION_NULL_ANALYSIS is enabled.

The qualified name of a Java annotatin type
Default is: org.eclipse.jdt.annotation.NonNullByDefault
Names of Secondary Annotation Types to specify a nullness default for unannotated types (COMPILER_NONNULL_BY_DEFAULT_ANNOTATION_SECONDARY_NAMES)
This option defines a comma-separated list of fully qualified Java type names that the compiler may use to perform special null analysis.

The annotation types identified by the names in this list are interpreted in the same way as the annotation identified by COMPILER_NONNULL_BY_DEFAULT_ANNOTATION_NAME. The intention is to support libraries using different sets of null annotations, in addition to those used by the current project. Secondary null annotations should not be used in the project's own source code.

This option only has an effect if the option COMPILER_ANNOTATION_NULL_ANALYSIS is enabled.

The qualified name of a Java annotatin type
Default is: ""
Reporting Use of Annotation Type as Super Interface (COMPILER_PB_ANNOTATION_SUPER_INTERFACE)
When enabled, the compiler will issue an error or a warning whenever an annotation type is used as a super-interface. Though legal, this is discouraged. ERROR
WARNING
INFO
IGNORE
Reporting Usage of 'assert' Identifier (COMPILER_PB_ASSERT_IDENTIFIER)
When enabled, the compiler will issue an error or a warning whenever 'assert' is used as an identifier (reserved keyword in 1.4) ERROR
WARNING
INFO
IGNORE
Reporting Boxing/Unboxing Conversion (COMPILER_PB_AUTOBOXING)
When enabled, the compiler will issue an error or a warning whenever a boxing or an unboxing conversion is performed. ERROR
WARNING
INFO
IGNORE
Reporting Usage of char[] Expressions in String Concatenations (COMPILER_PB_CHAR_ARRAY_IN_STRING_CONCATENATION)
When enabled, the compiler will issue an error or a warning whenever a char[] expression is used in String concatenations (e.g. "hello" + new char[]{'w','o','r','l','d'}). ERROR
WARNING
INFO
IGNORE
Reporting Deprecation (COMPILER_PB_DEPRECATION)
When enabled, the compiler will signal use of deprecated API either as an error or a warning. ERROR
WARNING
INFO
IGNORE
Reporting Terminal Deprecation (COMPILER_PB_TERMINAL_DEPRECATION)
When enabled, the compiler will signal use of terminally deprecated API either as an error or a warning. ERROR
WARNING
INFO
IGNORE
Reporting Deprecation Inside Deprecated Code (COMPILER_PB_DEPRECATION_IN_DEPRECATED_CODE)
When enabled, the compiler will signal use of deprecated API inside deprecated code either as an error or a warning. ENABLED
DISABLED
Reporting Deprecation When Overriding Deprecated Method (COMPILER_PB_DEPRECATION_WHEN_OVERRIDING_DEPRECATED_METHOD)
When enabled, the compiler will signal the declaration of a method overriding a deprecated one. ENABLED
DISABLED
Reporting Discouraged Reference to Type with Restricted Access (COMPILER_PB_DISCOURAGED_REFERENCE)
When enabled, the compiler will issue an error or a warning when referring to a type with discouraged access, as defined according to the access rule specifications. ERROR
WARNING
INFO
IGNORE
Reporting Empty Statements and Unnecessary Semicolons (COMPILER_PB_EMPTY_STATEMENT)
When enabled, the compiler will issue an error or a warning if an empty statement or a unnecessary semicolon is encountered. ERROR
WARNING
INFO
IGNORE
Reporting Usage of 'enum' Identifier (COMPILER_PB_ENUM_IDENTIFIER)
When enabled, the compiler will issue an error or a warning whenever 'enum' is used as an identifier (reserved keyword in 1.5). ERROR
WARNING
INFO
IGNORE
Reporting Switch Fall-Through Case (COMPILER_PB_FALLTHROUGH_CASE)
When enabled, the compiler will issue an error or a warning when a case may be entered by falling through a preceding, non empty case. ERROR
WARNING
INFO
IGNORE
Treating Optional Errors as Fatal (COMPILER_PB_FATAL_OPTIONAL_ERROR)
When enabled, optional errors (i.e. optional problems which severity has been set to "error") will be treated as standard compile errors, that is as fatal errors. When detecting a fatal error in source code, the compiler generates problem methods/types into the corresponding class files, in effect preventing the offending code from running until all issues get resolved.
When disabled, optional errors are only considered as warnings for code generation purposes, but they still carry an error indicator to make them more severe than regular warnings.
ENABLED
DISABLED
Reporting Field Declaration Hiding another Variable (COMPILER_PB_FIELD_HIDING)
When enabled, the compiler will issue an error or a warning whenever a field declaration is hiding some field or local variable (either locally, inherited or defined in enclosing type). ERROR
WARNING
INFO
IGNORE
Reporting Final Bound for Type Parameter (COMPILER_PB_FINAL_PARAMETER_BOUND)
When enabled, the compiler will issue an error or a warning whenever a generic type parameter is associated with a bound corresponding to a final type; since final types cannot be further extended, the parameter is pretty useless. ERROR
WARNING
INFO
IGNORE
Reporting Finally Blocks Not Completing Normally (COMPILER_PB_FINALLY_BLOCK_NOT_COMPLETING)
When enabled, the compiler will issue an error or a warning when a finally block does not complete normally. ERROR
WARNING
INFO
IGNORE
Reporting Forbidden Reference to Type with Restricted Access (COMPILER_PB_FORBIDDEN_REFERENCE)
When enabled, the compiler will issue an error or a warning when referring to a type that is non accessible, as defined according to the access rule specifications. ERROR
WARNING
INFO
IGNORE
Reporting Missing HashCode Method (COMPILER_PB_MISSING_HASHCODE_METHOD)
When enabled, the compiler will issue an error or a warning if a type overrides Object.equals(Object) but does not override hashCode(). ERROR
WARNING
INFO
IGNORE
Reporting Hidden Catch Block (COMPILER_PB_HIDDEN_CATCH_BLOCK)
Local to a try statement, some catch blocks may hide others , e.g.
   try {
      throw new java.io.CharConversionException();
   } catch (java.io.CharConversionException e) {
   } catch (java.io.IOException e) {}.
When enabling this option, the compiler will issue an error or a warning for hidden catch blocks corresponding to checked exceptions.
ERROR
WARNING
INFO
IGNORE
Reporting Null related problems as a consequnce of assert statements (COMPILER_PB_INCLUDE_ASSERTS_IN_NULL_ANALYSIS)
When enabled, the compiler will raise null related errors or warnings for a variable that got marked as potentially or definitely null or not null inside an assert statement, and whose null state has not been modified by any other statement following the assert.
This option has an effect only when the compiler compliance is 1.4 or greater.
Note that this option is only relevant in the context of the warnings raised by the options COMPILER_PB_REDUNDANT_NULL_CHECK, COMPILER_PB_NULL_REFERENCE, and COMPILER_PB_POTENTIAL_NULL_REFERENCE as a consequence of an assert statement.
ENABLED
DISABLED
Reporting Interface Method not Compatible with non-Inherited Methods (COMPILER_PB_INCOMPATIBLE_NON_INHERITED_INTERFACE_METHOD)
When enabled, the compiler will issue an error or a warning whenever an interface defines a method incompatible with a non-inherited Object one. ERROR
WARNING
INFO
IGNORE
Reporting Incomplete Enum Switch (COMPILER_PB_INCOMPLETE_ENUM_SWITCH)
When enabled, the compiler will issue an error or a warning whenever an enum switch statement lacks a default case. If no default case is given, additionally one error or warning is issued regarding each enum constant for which a corresponding case label is lacking. ERROR
WARNING
INFO
IGNORE
Reporting Indirect Reference to a Static Member (COMPILER_PB_INDIRECT_STATIC_ACCESS)
When enabled, the compiler will issue an error or a warning whenever a static field or method is accessed in an indirect way. A reference to a static member should preferably be qualified with its declaring type name. ERROR
WARNING
INFO
IGNORE
Reporting Invalid Javadoc Comment (COMPILER_PB_INVALID_JAVADOC)
This is the generic control for the severity of Javadoc problems. When enabled, the compiler will issue an error or a warning for a problem in Javadoc. ERROR
WARNING
INFO
IGNORE
Reporting Invalid Javadoc Tags (COMPILER_PB_INVALID_JAVADOC_TAGS)
When enabled, the compiler will signal unbound or unexpected reference tags in Javadoc. A 'throws' tag referencing an undeclared exception would be considered as unexpected.
Note that this diagnosis can be enabled based on the visibility of the construct associated with the Javadoc;
see also COMPILER_PB_INVALID_JAVADOC_TAGS_VISIBILITY.
ENABLED
DISABLED
Reporting Javadoc Tags with Deprecated References (COMPILER_PB_INVALID_JAVADOC_TAGS__DEPRECATED_REF)
Specify whether the compiler will report deprecated references used in Javadoc tags.
Note that this diagnosis can be enabled based on the visibility of the construct associated with the Javadoc;
see also COMPILER_PB_INVALID_JAVADOC_TAGS_VISIBILITY.
ENABLED
DISABLED
Reporting Javadoc Tags with Not Visible References (COMPILER_PB_INVALID_JAVADOC_TAGS__NOT_VISIBLE_REF)
Specify whether the compiler will report non-visible references used in Javadoc tags.
Note that this diagnosis can be enabled based on the visibility of the construct associated with the Javadoc;
see also COMPILER_PB_INVALID_JAVADOC_TAGS_VISIBILITY.
ENABLED
DISABLED
Visibility Level For Invalid Javadoc Tags (COMPILER_PB_INVALID_JAVADOC_TAGS_VISIBILITY)
Set the minimum visibility level for Javadoc tag problems. Below this level problems will be ignored. PUBLIC
PROTECTED
DEFAULT
PRIVATE
Reporting Local Variable Declaration Hiding another Variable (COMPILER_PB_LOCAL_VARIABLE_HIDING)
When enabled, the compiler will issue an error or a warning whenever a local variable declaration is hiding some field or local variable (either locally, inherited or defined in enclosing type). ERROR
WARNING
INFO
IGNORE
Maximum number of problems reported per compilation unit (COMPILER_PB_MAX_PER_UNIT)
Specify the maximum number of problems reported on each compilation unit (if the maximum is zero then all problems are reported). A positive or null integer.
Default value is 100.
Reporting a method that qualifies as static, but not declared static (COMPILER_PB_MISSING_STATIC_ON_METHOD)
When enabled, the compiler will issue an error or a warning if a method has not been declared as static, even though it qualifies as one. ERROR
WARNING
INFO
IGNORE
Reporting a method that may qualify as static, but not declared static (COMPILER_PB_POTENTIALLY_MISSING_STATIC_ON_METHOD)
When enabled, the compiler will issue an error or a warning if a method has not been declared as static, even though it may qualify as one, when another method doesn't override it. ERROR
WARNING
INFO
IGNORE
Reporting Method With Constructor Name (COMPILER_PB_METHOD_WITH_CONSTRUCTOR_NAME)
Naming a method with a constructor name is generally considered poor style programming. When enabling this option, the compiler will signal such scenarios either as an error or a warning. ERROR
WARNING
INFO
IGNORE
Reporting Missing @Deprecated Annotation (COMPILER_PB_MISSING_DEPRECATED_ANNOTATION)
When enabled, the compiler will issue an error or a warning whenever encountering a declaration carrying a @deprecated doc tag but having no corresponding @Deprecated annotation. ERROR
WARNING
INFO
IGNORE
Reporting Missing Javadoc Comments (COMPILER_PB_MISSING_JAVADOC_COMMENTS)
This is the generic control for the severity of missing Javadoc comment problems. When enabled, the compiler will issue an error or a warning when Javadoc comments are missing.
Note that this diagnosis can be enabled based on the visibility of the construct associated with the expected Javadoc.
ERROR
WARNING
INFO
IGNORE
Reporting Missing Javadoc Comments on Overriding Methods (COMPILER_PB_MISSING_JAVADOC_COMMENTS_OVERRIDING)
Specify whether the compiler will verify overriding methods in order to report missing Javadoc comment problems. ENABLED
DISABLED
Visibility Level For Missing Javadoc Comments (COMPILER_PB_MISSING_JAVADOC_COMMENTS_VISIBILITY)
Set the minimum visibility level for missing Javadoc problems. Below this level problems will be ignored. PUBLIC
PROTECTED
DEFAULT
PRIVATE
Reporting missing tag description (COMPILER_PB_MISSING_JAVADOC_TAG_DESCRIPTION)
When enabled, the compiler will report a warning or an error for any Javadoc tag missing a required description.
The severity of the problem is controlled with option COMPILER_PB_INVALID_JAVADOC. It does not depend on option COMPILER_PB_INVALID_JAVADOC_TAGS.
When this option is valued to COMPILER_PB_MISSING_ JAVADOC_TAG_DESCRIPTION_ ALL_STANDARD_TAGS, a subset of the standard Javadoc tags that have a description, text or label are checked. While this set may grow in the future, note that user-defined tags are not and will not be checked.
COMPILER_PB_MISSING_
JAVADOC_TAG_DESCRIPTION_RETURN_TAG
COMPILER_PB_MISSING_
JAVADOC_TAG_DESCRIPTION_ALL_STANDARD_TAGS
COMPILER_PB_MISSING_
JAVADOC_TAG_DESCRIPTION_NO_TAG
Reporting Missing Javadoc Tags (COMPILER_PB_MISSING_JAVADOC_TAGS)
This is the generic control for the severity of Javadoc missing tag problems. When enabled, the compiler will issue an error or a warning when tags are missing in Javadoc comments.
Note that this diagnosis can be enabled based on the visibility of the construct associated with the Javadoc.
ERROR
WARNING
INFO
IGNORE
Reporting Missing Javadoc Tags on Overriding Methods (COMPILER_PB_MISSING_JAVADOC_TAGS_OVERRIDING)
Specify whether the compiler will verify overriding methods in order to report Javadoc missing tag problems. ENABLED
DISABLED
Reporting Missing Javadoc Tags for Method Type Parameters (COMPILER_PB_MISSING_JAVADOC_TAGS_METHOD_TYPE_PARAMETERS)
Specify whether a missing @param for a type parameter in a method declaration should be reported. When enabled, the compiler will issue a missing Javadoc tag error or warning for a type parameter without a corresponding @param tag.
This option only has an effect if the compiler compliance is 1.5 or greater.
ENABLED
DISABLED
Visibility Level For Missing Javadoc Tags (COMPILER_PB_MISSING_JAVADOC_TAGS_VISIBILITY)
Set the minimum visibility level for Javadoc missing tag problems. Below this level problems will be ignored. PUBLIC
PROTECTED
DEFAULT
PRIVATE
Reporting Missing @Override Annotation (COMPILER_PB_MISSING_OVERRIDE_ANNOTATION)
When enabled, the compiler will issue an error or a warning whenever encountering a method declaration which overrides a superclass method but has no @Override annotation. ERROR
WARNING
INFO
IGNORE
Reporting Missing @Override Annotation For Interface Method Implementation (COMPILER_PB_MISSING_OVERRIDE_ANNOTATION_FOR_INTERFACE_METHOD_IMPLEMENTATION)
When enabled, the compiler will issue an error or a warning whenever encountering a method declaration which overrides or implements a superinterface method but has no @Override annotation.
This option only has an effect if the compiler compliance is 1.6 or greater.
The severity of the problem is controlled with option COMPILER_PB_MISSING_OVERRIDE_ANNOTATION.
ENABLED
DISABLED
Reporting Missing Declaration of serialVersionUID Field on Serializable Class (COMPILER_PB_MISSING_SERIAL_VERSION)
When enabled, the compiler will issue an error or a warning whenever a serializable class is missing a local declaration of a serialVersionUID field. This field must be declared as static final and be of type long. ERROR
WARNING
INFO
IGNORE
Reporting Assignment with No Effect (COMPILER_PB_NO_EFFECT_ASSIGNMENT)
When enabled, the compiler will issue an error or a warning whenever an assignment has no effect (e.g. 'x = x'). ERROR
WARNING
INFO
IGNORE
Reporting Non-Externalized String Literal (COMPILER_PB_NON_NLS_STRING_LITERAL)
When enabled, the compiler will issue an error or a warning for non externalized String literal (i.e. non tagged with //$NON-NLS-<n>$). ERROR
WARNING
INFO
IGNORE
Reporting Dropped Nonnull Parameter Annotations (COMPILER_PB_NONNULL_PARAMETER_ANNOTATION_DROPPED)
When enabled, the compiler will issue an error or a warning against a parameter of a method that overrides an inherited method if all of the following hold: This particular situation bears the same inherent risk as any unannotated method parameter, because the compiler's null ananysis cannot decide wither null is or is not a legal value for this parameter. However, the annotation in the overridden method suggests that the parameter should also be annotated as non-null. If that is not intended or possible, it is recommended to annotate the parameter as nullable, in order to make this (legal) change of contract explicit. ERROR
WARNING
INFO
IGNORE
Reporting Unsafe NonNull Interpretation Of Type Variables (COMPILER_PB_NONNULL_TYPEVAR_FROM_LEGACY_INVOCATION)
When enabled, the compiler will issue an error or a warning against a method call if all of the following hold:
  • The method's declared return type is a type variable without any null annotation.
  • For the given invocation this type variable is substituted with a nonnull type.
  • The type declaring the method is provided by a third-party library.
  • No null annotations exist for this library type, neither in its class file nor using external annotations.

This particular situation leverages the option to consistently substitute all occurrences of a type variable with a nonnull type, but it bears the risk that the library type may not be aware of null annotations thus lacking a necessary @Nullable annotation for a particular occurrence of a type variable.

This option only has an effect if the option COMPILER_ANNOTATION_NULL_ANALYSIS is enabled and when the configured set of null annotations declares the target TYPE_USE.

ERROR
WARNING
INFO
IGNORE
Reporting Null Dereference (COMPILER_PB_NULL_REFERENCE)
When enabled, the compiler will issue an error or a warning whenever a variable that is statically known to hold a null value is used to access a field or method.
Errors or warnings raised due to this option arising as a consequence of asserts can be controlled by COMPILER_PB_INCLUDE_ASSERTS_IN_NULL_ANALYSIS (java 1.4 and greater)
ERROR
WARNING
INFO
IGNORE
Reporting unchecked conversion from a type with unknown nullness to a null annotated type (COMPILER_PB_NULL_UNCHECKED_CONVERSION)
When enabled, the compiler will issue an error or a warning whenever one of the following situations is detected:
  1. A method declared with a nonnull annotation returns an expression for which insufficient nullness information is available for statically proving that no flow will pass a null value at runtime.
  2. An expression for which insufficient nullness information is available for statically proving that it will never evaluate to a null value at runtime is passed as an argument in a method call where the corresponding parameter of the called method is declared with a nonnull annotation.
  3. An expression for which insufficient nullness information is available for statically proving that it will never evaluate to a null value at runtime is assigned to a local variable that is declared with a nonnull annotation.
Unchecked null conversion is usually a consequence of using other unannotated variables or methods.

The compiler options COMPILER_NONNULL_ANNOTATION_NAME and COMPILER_NULLABLE_ANNOTATION_NAME control which annotations the compiler shall interpret as nonnull or nullable annotations, respectively.

This option only has an effect if the option COMPILER_ANNOTATION_NULL_ANALYSIS is enabled.

ERROR
WARNING
INFO
IGNORE
Reporting problems detected by pessimistic null analysis for free type variables (COMPILER_PB_PESSIMISTIC_NULL_ANALYSIS_FOR_FREE_TYPE_VARIABLES)
Unless set to "ignore", type variables not affected by any explicit null annotation are pessimistically analyzed in two directions: When reading a value of this type, it is assumed to be nullable. When this type appears as the required type (i.e., at the left hand side of an assignment or variable initialization, or as the method return type against which a return statement is being checked) the type is considered to require the nonnull property.

Problems reported due to this pessimistic analysis are reported with the level given in this option.

ERROR
WARNING
INFO
IGNORE
Reporting Violations of Null Specifications (COMPILER_PB_NULL_SPECIFICATION_VIOLATION)
When enabled, the compiler will issue an error or a warning whenever one of the following situations is detected:
  1. A method declared with a nonnull annotation returns a nullable expression.
  2. A nullable expression is passed as an argument in a method call where the corresponding parameter of the called method is declared with a nonnull annotation.
  3. A nullable expression is assigned to a local variable that is declared with a nonnull annotation.
  4. A method that overrides an inherited method declared with a nonnull annotation tries to relax that contract by specifying a nullable annotation (prohibition of contravariant return).
  5. A method that overrides an inherited method which has a nullable declaration for at least one of its parameters, tries to tighten that null contract by specifying a nonnull annotation for its corresponding parameter (prohibition of covariant parameters).

In the above an expression is considered as nullable if either it is statically known to evaluate to the value null, or if it is declared with a nullable annotation.

The compiler options COMPILER_NONNULL_ANNOTATION_NAME and COMPILER_NULLABLE_ANNOTATION_NAME control which annotations the compiler shall interpret as nonnull or nullable annotations, respectively.

This option only has an effect if the option COMPILER_ANNOTATION_NULL_ANALYSIS is enabled.

ERROR
WARNING
Reporting Overriding Methods that do not call their super method invocation. (COMPILER_PB_OVERRIDING_METHOD_WITHOUT_SUPER_INVOCATION)
When enabled, the compiler will issue an error or a warning if a method is overriding another method without calling the super invocation. ERROR
WARNING
INFO
IGNORE
Reporting Potential Null Dereference (COMPILER_PB_POTENTIAL_NULL_REFERENCE)
When enabled, the compiler will issue an error or a warning whenever a variable that has formerly been tested against null but is not (no more) statically known to hold a non-null value is used to access a field or method.
Errors or warnings raised due to this option arising as a consequence of asserts can be controlled by COMPILER_PB_INCLUDE_ASSERTS_IN_NULL_ANALYSIS (java 1.4 and greater)
ERROR
WARNING
INFO
IGNORE
Reporting conflicts between declared null annotation and inferred null value (COMPILER_PB_NULL_ANNOTATION_INFERENCE_CONFLICT)
When enabled, the compiler will issue an error or a warning whenever one of the following situations is detected:
  1. A method declared with a nonnull annotation returns an expression that is statically known to evaluate to a null value on some flow.
  2. An expression that is statically known to evaluate to a null value on some flow is passed as an argument in a method call where the corresponding parameter of the called method is declared with a nonnull annotation.
  3. An expression that is statically known to evaluate to a null value on some flow is assigned to a local variable that is declared with a nonnull annotation.

The compiler options COMPILER_NONNULL_ANNOTATION_NAME and COMPILER_NULLABLE_ANNOTATION_NAME control which annotations the compiler shall interpret as nonnull or nullable annotations, respectively.

This option only has an effect if the option COMPILER_ANNOTATION_NULL_ANALYSIS is enabled.

ERROR
WARNING
INFO
IGNORE
Reporting Redundant Null Check (COMPILER_PB_REDUNDANT_NULL_CHECK)
When enabled, the compiler will issue an error or a warning whenever a variable that is statically known to hold a null or a non-null value is tested against null.
Errors or warnings raised due to this option arising as a consequence of asserts can be controlled by COMPILER_PB_INCLUDE_ASSERTS_IN_NULL_ANALYSIS (java 1.4 and greater)
ERROR
WARNING
INFO
IGNORE
Reporting Redundant Null Annotations. (COMPILER_PB_REDUNDANT_NULL_ANNOTATION)
When enabled, the compiler will issue an error or a warning when a non-null annotation (see COMPILER_NONNULL_ANNOTATION_NAME) is applied although the same effect is already achieved by a default applicable at the current location. Such a default may be effective by using the annotation specified by the option COMPILER_NONNULL_BY_DEFAULT_ANNOTATION_NAME.

The compiler options COMPILER_NONNULL_ANNOTATION_NAME and COMPILER_NULLABLE_ANNOTATION_NAME control which annotations the compiler shall interpret as nonnull or nullable annotations, respectively.

This option only has an effect if the option COMPILER_ANNOTATION_NULL_ANALYSIS is enabled.

ERROR
WARNING
INFO
IGNORE
Reporting missing default nullness annotation (COMPILER_PB_MISSING_NONNULL_BY_DEFAULT_ANNOTATION)

When enabled, the compiler will issue an error or a warning in the following cases:

  • When a package does not contain a default nullness annotation, as a result of missing package-info.java or missing default nullness annotation in package-info.java.
  • When a type inside a default package does not contain a default nullness annotation.

This option only has an effect if the option COMPILER_ANNOTATION_NULL_ANALYSIS is enabled.

ERROR
WARNING
INFO
IGNORE
Reporting Redundant Specification of type arguments for generic class instance creation (COMPILER_PB_REDUNDANT_TYPE_ARGUMENTS)
When enabled, the compiler will issue an error or a warning whenever type arguments are specified in a generic instance creation expression, although the diamond operator '<>' could have been used instead.
(java 1.7 and greater)
ERROR
WARNING
INFO
IGNORE
Reporting Attempt to Override Package Visible Method (COMPILER_PB_OVERRIDING_PACKAGE_DEFAULT_METHOD)
A package visible method, which is any method that is not explicitly declared as public, protected or private, is not visible from other packages, and thus cannot be overridden from another package. Attempting to override a package visible method from another package introduces a new method that is unrelated to the original one. When enabling this option, the compiler will signal such situations as an error or a warning. ERROR
WARNING
INFO
IGNORE
Reporting Parameter Assignment (COMPILER_PB_PARAMETER_ASSIGNMENT)
When enabled, the compiler will issue an error or a warning if a parameter is assigned to. ERROR
WARNING
INFO
IGNORE
Reporting Possible Accidental Boolean Assignment (COMPILER_PB_POSSIBLE_ACCIDENTAL_BOOLEAN_ASSIGNMENT)
When enabled, the compiler will issue an error or a warning if a boolean assignment is acting as the condition of a control statement (where it probably was meant to be a boolean comparison). ERROR
WARNING
INFO
IGNORE
Reporting Raw Type Reference (COMPILER_PB_RAW_TYPE_REFERENCE)
When enabled, the compiler will issue an error or a warning when detecting references to raw types. Raw types are discouraged, and are intended to help interfacing with legacy code. In the future, the language specification may reject raw references to generic types. ERROR
WARNING
INFO
IGNORE
Reporting Redundant Superinterface (COMPILER_PB_REDUNDANT_SUPERINTERFACE)
When enabled, the compiler will issue an error or a warning if a type explicitly implements an interface that is already implemented by any of its supertypes. ERROR
WARNING
INFO
IGNORE
Reporting Special Parameter Hiding another Field (COMPILER_PB_SPECIAL_PARAMETER_HIDING_FIELD)
When enabled, the compiler will signal cases where a constructor or setter method parameter declaration is hiding some field (either locally, inherited or defined in enclosing type). ENABLED
DISABLED
Reporting Non-Static Reference to a Static Member (COMPILER_PB_STATIC_ACCESS_RECEIVER)
When enabled, the compiler will issue an error or a warning whenever a static field or method is accessed with an expression receiver. ERROR
WARNING
INFO
IGNORE
Further Determining the Effect of @SuppressWarnings if also COMPILER_PB_SUPPRESS_WARNINGS is enabled. (COMPILER_PB_SUPPRESS_OPTIONAL_ERRORS)
When enabled, the @SuppressWarnings annotation can additionally be used to suppress optional compiler diagnostics that have been configured as ERROR.
When disabled, all @SuppressWarnings annotations only affects warnings.
ENABLED
DISABLED
Determining Effect of @SuppressWarnings (COMPILER_PB_SUPPRESS_WARNINGS)
When enabled, the @SuppressWarnings annotation can be used to suppress some compile warnings.
When disabled, all @SupressWarnings annotations are ignored; i.e., warnings are reported even when they occur in the scope of an entity that carries an @SuppressWarnings annotation.
ENABLED
DISABLED
Perform syntactic null analysis for fields (COMPILER_PB_SYNTACTIC_NULL_ANALYSIS_FOR_FIELDS)
When enabled, the compiler will detect certain syntactic constellations where a null related warning against a field reference would normally be raised but can be suppressed at low risk given that the same field reference was known to be non-null immediately before. ENABLED
DISABLED
Reporting Synthetic Access Emulation (COMPILER_PB_SYNTHETIC_ACCESS_EMULATION)
When enabled, the compiler will issue an error or a warning whenever it emulates access to a non-accessible member of an enclosing type. Such access can have performance implications. ERROR
WARNING
INFO
IGNORE
Reporting Type Parameter Declaration Hiding another Type (COMPILER_PB_TYPE_PARAMETER_HIDING)
When enabled, the compiler will issue an error or a warning whenever a type parameter declaration is hiding some type. ERROR
WARNING
INFO
IGNORE
Reporting Unavoidable Generic Type Problems due to raw APIs (COMPILER_PB_UNAVOIDABLE_GENERIC_TYPE_PROBLEMS)
When enabled, the compiler will issue an error or warning even when it detects a generics-related type problem that could not have been avoided by the programmer, because a referenced API already contains raw types. As an example, a type may be forced to use raw types in its method signatures and return types because the methods it overrides from a super type are declared to use raw types in the first place. ENABLED
DISABLED
Reporting Unchecked Type Operation (COMPILER_PB_UNCHECKED_TYPE_OPERATION)
When enabled, the compiler will issue an error or a warning whenever an operation involves generic types, and potentially invalidates type safety since involving raw types (e.g. invoking #foo(X<String>) with arguments (X)). ERROR
WARNING
INFO
IGNORE
Reporting Unclosed Closeable (COMPILER_PB_UNCLOSED_CLOSEABLE)
When enabled, the compiler will issue an error or a warning if a local variable holds a value of type java.lang.AutoCloseable (compliance >= 1.7) or a value of type java.io.Closeable (compliance <= 1.6) and if flow analysis shows that the method close() is not invoked locally on that value. ERROR
WARNING
INFO
IGNORE
Reporting Potentially Unclosed Closeable (COMPILER_PB_POTENTIALLY_UNCLOSED_CLOSEABLE)
When enabled, the compiler will issue an error or a warning if a local variable holds a value of type java.lang.AutoCloseable (compliance >= 1.7) or a value of type java.io.Closeable (compliance <= 1.6) and if flow analysis shows that the method close() is not invoked locally on that value for all execution paths. ERROR
WARNING
INFO
IGNORE
Reporting Explicitly Closed Closeable (COMPILER_PB_EXPLICITLY_CLOSED_AUTOCLOSEABLE)
When enabled, the compiler will issue an error or a warning if a local variable holds a value of type java.lang.AutoCloseable, and if the method close() is explicitly invoked on that resource, but the resource is not managed by a try-with-resources block. ERROR
WARNING
INFO
IGNORE
Reporting a method invocation providing an argument of an unlikely type (COMPILER_PB_UNLIKELY_COLLECTION_METHOD_ARGUMENT_TYPE)
When enabled, the compiler will issue an error or warning when certain well-known Collection methods that take an 'Object', like e.g. Map.get(Object), are used with an argument type that seems to be not related to the corresponding type argument of the Collection. ERROR
WARNING
INFO
IGNORE
Perform strict analysis against the expected type of collection methods (COMPILER_PB_UNLIKELY_COLLECTION_METHOD_ARGUMENT_TYPE_STRICT)
This is a sub-option of COMPILER_PB_UNLIKELY_COLLECTION_METHOD_ARGUMENT_TYPE, which will replace the heuristics with strict compatibility checks, i.e., each argument that is not strictly compatible with the expected type will trigger an error or warning. ENABLED
DISABLED
Reporting a method invocation providing an argument of an unlikely type to method 'equals' (COMPILER_PB_UNLIKELY_EQUALS_ARGUMENT_TYPE)
When enabled, the compiler will issue an error or warning when java.lang.Object.equals(Object) is used with an argument type that seems to be not related to the receiver's type, or correspondingly when the arguments of java.util.Objects.equals(Object, Object) have types that seem to be not related to each other. ERROR
WARNING
INFO
IGNORE
Reporting when public API uses a non-API type (COMPILER_PB_API_LEAKS)
When enabled, the compiler will issue an error or warning when public API mentions a type that is not accessible to clients. ERROR
WARNING
INFO
IGNORE
Reporting Undocumented Empty Block (COMPILER_PB_UNDOCUMENTED_EMPTY_BLOCK)
When enabled, the compiler will issue an error or a warning when an empty block is detected and it is not documented with any comment. ERROR
WARNING
INFO
IGNORE
Reporting Unhandled Warning Token for @SuppressWarnings (COMPILER_PB_UNHANDLED_WARNING_TOKEN)
When enabled, the compiler will issue an error or a warning when encountering a token it cannot handle inside a @SuppressWarnings annotation. ERROR
WARNING
INFO
IGNORE
Reporting Unnecessary Else (COMPILER_PB_UNNECESSARY_ELSE)
When enabled, the compiler will issue an error or a warning when a statement is unnecessarily nested within an else clause (in situation where then clause is not completing normally). ERROR
WARNING
INFO
IGNORE
Reporting Unnecessary Type Check (COMPILER_PB_UNNECESSARY_TYPE_CHECK)
When enabled, the compiler will issue an error or a warning when a cast or an instanceof operation is unnecessary. ERROR
WARNING
INFO
IGNORE
Reporting Unqualified Access to Field (COMPILER_PB_UNQUALIFIED_FIELD_ACCESS)
When enabled, the compiler will issue an error or a warning when a field is access without any qualification. In order to improve code readability, it should be qualified, e.g. 'x' should rather be written 'this.x'. ERROR
WARNING
INFO
IGNORE
Reporting Unused Declared Thrown Exception (COMPILER_PB_UNUSED_DECLARED_THROWN_EXCEPTION)
When enabled, the compiler will issue an error or a warning when a method or a constructor is declaring a checked exception as thrown, but its body actually raises neither that exception, nor any other exception extending it.
This diagnostic is further tuned by options COMPILER_PB_ UNUSED_DECLARED_THROWN_EXCEPTION_ EXEMPT_EXCEPTION_AND_THROWABLE, COMPILER_PB_ UNUSED_DECLARED_THROWN_EXCEPTION_ INCLUDE_DOC_COMMENT_REFERENCE, and COMPILER_PB_ UNUSED_DECLARED_THROWN_EXCEPTION_ WHEN_OVERRIDING.
ERROR
WARNING
INFO
IGNORE
Reporting Unused Declared Thrown Exception Exempts Exception And Throwable (COMPILER_PB_UNUSED_DECLARED_THROWN_EXCEPTION_EXEMPT_EXCEPTION_AND_THROWABLE)
When enabled, the compiler will issue an error or a warning when a method or a constructor is declaring a checked exception else than java.lang.Throwable or java.lang.Exception as thrown, but its body actually raises neither that exception, nor any other exception extending it. When disabled, the compiler will issue an error or a warning when a method or a constructor is declaring a checked exception (including java.lang.Throwable and java.lang.Exception) as thrown, but its body actually raises neither that exception, nor any other exception extending it.
The severity of the unused declared thrown exception problem is controlled with option COMPILER_PB_ UNUSED_DECLARED_ THROWN_EXCEPTION.
This diagnostic is further tuned by options COMPILER_PB_ UNUSED_DECLARED_THROWN_EXCEPTION_ INCLUDE_DOC_COMMENT_REFERENCE and COMPILER_PB_ UNUSED_DECLARED_THROWN_EXCEPTION_ WHEN_OVERRIDING.
ENABLED
DISABLED
Consider Reference in Doc Comment for Unused Declared Thrown Exception Check (COMPILER_PB_UNUSED_DECLARED_THROWN_EXCEPTION_INCLUDE_DOC_COMMENT_REFERENCE)
When enabled, the compiler will consider doc comment references to exceptions (i.e. @throws clauses) for the unused declared thrown exception check. Thus, documented exceptions will be considered as mandated as per doc contract.
The severity of the unused declared thrown exception problem is controlled with option COMPILER_PB_ UNUSED_DECLARED_ THROWN_EXCEPTION.
Note: this option has no effect until the doc comment support is enabled according to the option COMPILER_DOC_COMMENT_SUPPORT.
This diagnostic is further tuned by options COMPILER_PB_ UNUSED_DECLARED_THROWN_EXCEPTION_ EXEMPT_EXCEPTION_AND_THROWABLE and COMPILER_PB_ UNUSED_DECLARED_THROWN_EXCEPTION_ WHEN_OVERRIDING.
ENABLED
DISABLED
Reporting Unused Declared Thrown Exception in Overriding Method (COMPILER_PB_UNUSED_DECLARED_THROWN_EXCEPTION_WHEN_OVERRIDING)
When disabled, the compiler will report unused declared thrown exceptions neither on overriding methods nor on implementing methods.
The severity of the unused declared thrown exception problem is controlled with option COMPILER_PB_ UNUSED_DECLARED_ THROWN_EXCEPTION.
This diagnostic is further tuned by options COMPILER_PB_ UNUSED_DECLARED_THROWN_EXCEPTION_ EXEMPT_EXCEPTION_AND_THROWABLE and COMPILER_PB_ UNUSED_DECLARED_THROWN_EXCEPTION_ INCLUDE_DOC_COMMENT_REFERENCE.
ENABLED
DISABLED
Reporting Unreferenced Label (COMPILER_PB_UNUSED_LABEL)
When enabled, the compiler will issue an error or a warning when encountering a labeled statement which label is never explicitly referenced. A label is considered to be referenced if its name explicitly appears within a break or continue statement; for instance the following label would be considered unreferenced:
LABEL: { break; }
ERROR
WARNING
INFO
IGNORE
Reporting Unused Type Parameter (COMPILER_PB_UNUSED_TYPE_PARAMETER)
When enabled, the compiler will issue an error or a warning for unused type parameter. ERROR
WARNING
INFO
IGNORE
Reporting Unused Import (COMPILER_PB_UNUSED_IMPORT)
When enabled, the compiler will issue an error or a warning for unused import reference. ERROR
WARNING
INFO
IGNORE
Reporting Unused Local (COMPILER_PB_UNUSED_LOCAL)
When enabled, the compiler will issue an error or a warning for unused local variables (i.e. variables never read from). ERROR
WARNING
INFO
IGNORE
Reporting Allocation of an Unused Object (COMPILER_PB_UNUSED_OBJECT_ALLOCATION)
When enabled, the compiler will issue an error or a warning if an object is allocated but never used, neither by holding a reference nor by invoking one of the object's methods. ERROR
WARNING
INFO
IGNORE
Reporting Unused Parameter (COMPILER_PB_UNUSED_PARAMETER)
When enabled, the compiler will issue an error or a warning for unused method parameters (i.e. parameters never read from). ERROR
WARNING
INFO
IGNORE
Reporting Unused Parameter if Implementing Abstract Method (COMPILER_PB_UNUSED_PARAMETER_WHEN_IMPLEMENTING_ABSTRACT)
When enabled, the compiler will signal unused parameters in abstract method implementations. ENABLED
DISABLED
Reporting Unused Parameter if Overriding Concrete Method (COMPILER_PB_UNUSED_PARAMETER_WHEN_OVERRIDING_CONCRETE)
When enabled, the compiler will signal unused parameters in methods overriding concrete ones. ENABLED
DISABLED
Consider Reference in Doc Comment for Unused Parameter Check (COMPILER_PB_UNUSED_PARAMETER_INCLUDE_DOC_COMMENT_REFERENCE)
When enabled, the compiler will consider doc comment references to parameters (i.e. @param clauses) for the unused parameter check. Thus, documented parameters will be considered as mandated as per doc contract.
The severity of the unused parameter problem is controlled with option "org.eclipse.jdt.core.compiler.problem.unusedParameter"
. Note: this option has no effect until the doc comment support is enabled according to the option "org.eclipse.jdt.core.compiler.doc.comment.support".
ENABLED
DISABLED
Reporting Unused Exception Parameter (COMPILER_PB_UNUSED_EXCEPTION_PARAMETER)
When enabled, the compiler will issue an error or a warning for unused exception parameters (that is, the thrown exception is never read from). ERROR
WARNING
INFO
IGNORE
Reporting Unused Private Members (COMPILER_PB_UNUSED_PRIVATE_MEMBER)
When enabled, the compiler will issue an error or a warning whenever a private method or field is declared but never used within the same unit. ERROR
WARNING
INFO
IGNORE
Reporting Presence of Type Arguments for a Non-Generic Method Invocation (COMPILER_PB_UNUSED_TYPE_ARGUMENTS_FOR_METHOD_INVOCATION)
When enabled, the compiler will issue an error or a warning whenever type arguments are encountered for a non-generic method invocation.
Note that prior to compliance level "1.7", this situation would automatically result into an error. From Java 7 on, unused type arguments are tolerated, and optionally warned against.
ERROR
WARNING
INFO
IGNORE
Reporting Unnecessary @SuppressWarnings (COMPILER_PB_UNUSED_WARNING_TOKEN)
When enabled, the compiler will issue an error or a warning when encountering a @SuppressWarnings annotation for which no corresponding warning got detected in the code. This diagnostic is provided to help developers to get rid of transient @SuppressWarnings that are no longer needed.
Note that @SuppressWarnings("all") is still silencing the warning for unnecessary @SuppressWarnings, as it is the master switch to silence all warnings.
ERROR
WARNING
INFO
IGNORE
Reporting Varargs Argument Needing a Cast in Method/Constructor Inv (COMPILER_PB_VARARGS_ARGUMENT_NEED_CAST)
When enabled, the compiler will issue an error or a warning whenever a varargs arguments should be cast when passed to a method/constructor invocation. (e.g. Class.getMethod(String name, Class ... args ) invoked with arguments ("foo", null)). ERROR
WARNING
INFO
IGNORE
Setting Source Compatibility Mode (COMPILER_SOURCE)
Specify the compatibility level of the Java source code.
Source level "1.4" enables assertions. From "1.4" on, 'assert' is a reserved keyword.
Source level "1.5" enables generics, autoboxing, covariance, annotations, enumerations enhanced for loops, static imports and varargs. From "1.5" on, 'enum' is a reserved keyword.
The compliance, source and target levels must satisfy a set of constraints summarized in a compatibility table below.
VERSION_1_3
VERSION_1_4
VERSION_1_5
VERSION_1_6
VERSION_1_7
VERSION_1_8
VERSION_9
VERSION_10
VERSION_11
VERSION_12
VERSION_13
VERSION_14
VERSION_15
Generating Source Debug Attribute (COMPILER_SOURCE_FILE_ATTR)
When generated, this attribute will enable the debugger to present the corresponding source code. GENERATE
DO_NOT_GENERATE
Determine whether task tags are case-sensitive (COMPILER_TASK_CASE_SENSITIVE)
When enabled, task tags are considered in a case-sensitive way. ENABLED
DISABLED
Define the Automatic Task Priorities (COMPILER_TASK_PRIORITIES)

In parallel with the Automatic Task Tags, this list defines the priorities (high, normal or low) of the task markers issued by the compiler.
Possible priorities are "HIGH", "NORMAL" or "LOW".

{<priority>[,<priority>]*}.
Default value is "NORMAL,HIGH,
NORMAL"
Define the Automatic Task Tags (COMPILER_TASK_TAGS)
When the tag list is not empty, the compiler will issue a task marker whenever it encounters one of the corresponding tags inside any comment in Java source code. Generated task messages will start with the tag, and range until the next line separator, comment ending, or tag.
When a given line of code bears multiple tags, each tag will be reported separately. Moreover, a tag immediately followed by another tag will be reported using the contents of the next non-empty tag of the line, if any.
Note that tasks messages are trimmed. If a tag is starting with a letter or digit, then it cannot be leaded by another letter or digit to be recognized ("fooToDo" will not be recognized as a task for tag "ToDo", but "foo#ToDo" will be detected for either tag "ToDo" or "#ToDo"). Respectively, a tag ending with a letter or digit cannot be followed by a letter or digit to be recognized ("ToDofoo" will not be recognized as a task for tag "ToDo", but "ToDo:foo" will be detected either for tag "ToDo" or "ToDo:").
{<tag>[,<tag>]*}.
Default value is "TODO,FIXME,
XXX"

The following table summarizes the compatible combinations of Java compliance, target and source levels (bold values are the defaults for each compliance level).

Compliance Target Source
1.7 1.7 1.7, 1.6, 1.5, 1.4, 1.3
1.6 1.6, 1.5, 1.4, 1.3
1.5 1.5, 1.4, 1.3
1.4 1.4, 1.3
1.3, 1.2, 1.1 1.3
1.6 1.6 1.6, 1.5, 1.4, 1.3
1.5 1.5, 1.4, 1.3
1.4 1.4, 1.3
1.3, 1.2, 1.1 1.3
1.5 1.5 1.5, 1.4, 1.3
1.4 1.4, 1.3
1.3, 1.2, 1.1 1.3
1.4 1.4 1.4, 1.3
1.3, 1.2, 1.1, cldc1.1 1.3
1.3 1.3, 1.2, 1.1, cldc1.1 1.3

Builder options

Description Values
Cleaning Output Folder(s) (CORE_JAVA_BUILD_CLEAN_OUTPUT_FOLDER)
Indicate whether the JavaBuilder is allowed to clean the output folders when performing full build operations. CLEAN
IGNORE
Reporting Duplicate Resources (CORE_JAVA_BUILD_DUPLICATE_RESOURCE)
Indicate the severity of the problem reported when more than one occurrence of a given resource is to be copied to the output location. ERROR
WARNING
Abort if Invalid Classpath (CORE_JAVA_BUILD_INVALID_CLASSPATH)
Instruct the builder to abort if the classpath is invalid. ABORT
IGNORE
Computing Project Build Order (CORE_JAVA_BUILD_ORDER)
Indicate whether JavaCore should enforce the project build order to be based on the classpath prerequisite chain. When requesting to compute, this takes over the platform default order (based on project references). COMPUTE
IGNORE
Recreate Modified class files in Output Folder (CORE_JAVA_BUILD_RECREATE_MODIFIED_CLASS_FILES_IN_OUTPUT_FOLDER)
Indicate whether the JavaBuilder should check for any changes to .class files in the output folders while performing incremental build operations. If changes are detected to managed .class files, then a full build is performed, otherwise the changes are left as is. Tools further altering generated .class files, like optimizers, should ensure this option remains set to its default state of ignore. ENABLE
IGNORE
Specifying Filters for Resource Copying Control (CORE_JAVA_BUILD_RESOURCE_COPY_FILTER)
Specify filters to control the resource copy process. (<name> is a file name pattern (only * wild-cards allowed) or the name of a folder which ends with '/'; any resource which name matches one or more of these patterns is not copied to the output folder.) {<name>[,<name>]*}.
Default value is ""

JavaCore options

Description Values
Reporting Classpath Cycle (CORE_CIRCULAR_CLASSPATH)
Indicate the severity of the problem reported when a project is involved in a cycle. ERROR
WARNING
Enabling Usage of Classpath Exclusion Patterns (CORE_ENABLE_CLASSPATH_EXCLUSION_PATTERNS)
When set to "disabled", no entry on a project classpath can be associated with an exclusion or inclusion pattern. ENABLED
DISABLED
Enabling Usage of Classpath Multiple Output Locations (CORE_ENABLE_CLASSPATH_MULTIPLE_OUTPUT_LOCATIONS)
When set to "disabled", no entry on a project classpath can be associated with a specific output location. In particular, this prevents the use of multiple output locations for a single project. ENABLED
DISABLED
Reporting an output location overlapping another source location (CORE_OUTPUT_LOCATION_OVERLAPPING_ANOTHER_SOURCE)
Indicate the severity of the problem reported when a source entry's output location overlaps another source entry. ERROR
WARNING
INFO
IGNORE
Default Source Encoding Format (CORE_ENCODING)
Get the default encoding format of source files. This value is immutable and preset to the result of ResourcesPlugin.getEncoding().
It is offered as a convenience shortcut only.
Immutable, preset to the platform default.
Reporting Incompatible JDK Level for Required Binaries (CORE_INCOMPATIBLE_JDK_LEVEL)
Indicate the severity of the problem reported when a project prerequisites another project or library with an incompatible target JDK level (e.g. project targeting 1.1 vm, but compiled against 1.4 libraries). ERROR
WARNING
INFO
IGNORE
Reporting Incomplete Classpath (CORE_INCOMPLETE_CLASSPATH)
When enabled, the compiler will activate the preview language features of the latest Java version. ENABLED
DISABLED
Enable support for preview language features (COMPILER_PB_ENABLE_PREVIEW_FEATURES)
When enabled, the compiler will issue a warning when a preview feature is used. WARNING
INFO
IGNORE
Set the severity of reporting when a preview feature is used. (COMPILER_PB_REPORT_PREVIEW_FEATURES)
Indicate the severity of the problem reported when an entry on the classpath doesn't exist, is not legitimate, or is not visible (e.g. a referenced project is closed). ERROR
WARNING
Ignore Unnamed Module for Split Package (COMPILER_IGNORE_UNNAMED_MODULE_FOR_SPLIT_PACKAGE)
With this option the compiler will deliberately accept programs violating JLS in a specific way. Instead the compiler will behave in accordance to the original, but unmaintained document "The State of the Module System" which indicates that different semantics had been intended. ENABLED
DISABLED
Set the timeout value for retrieving a method's parameter names from javadoc (TIMEOUT_FOR_PARAMETER_NAME_FROM_ATTACHED_JAVADOC)
Timeout in milliseconds to retrieve a method's parameter names from javadoc.
If the value is 0, the parameter names are not fetched and the raw names are returned.
A positive or null integer.
Default is "50".
Set Java formatter name (JAVA_FORMATTER)
Name of the Java formatter to be used for formatting Java code.
A non-null, non-empty Sring value.
Default is "org.eclipse.jdt.core.defaultJavaFormatter".

Formatter options

Description Values
Option to align type members of a type declaration on column (FORMATTER_ALIGN_TYPE_MEMBERS_ON_COLUMNS)
Possible values TRUE
FALSE
Option for alignment of arguments in allocation expression (FORMATTER_ALIGNMENT_FOR_ARGUMENTS_IN_ALLOCATION_EXPRESSION)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option for alignment of arguments in enum constant (FORMATTER_ALIGNMENT_FOR_ARGUMENTS_IN_ENUM_CONSTANT)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option for alignment of arguments in annotation (FORMATTER_ALIGNMENT_FOR_ARGUMENTS_IN_ANNOTATION)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_NO_SPLIT, INDENT_DEFAULT)
Option for alignment of arguments in explicit constructor call (FORMATTER_ALIGNMENT_FOR_ARGUMENTS_IN_EXPLICIT_CONSTRUCTOR_CALL)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option for alignment of arguments in method invocation (FORMATTER_ALIGNMENT_FOR_ARGUMENTS_IN_METHOD_INVOCATION)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option for alignment of arguments in qualified allocation expression (FORMATTER_ALIGNMENT_FOR_ARGUMENTS_IN_QUALIFIED_ALLOCATION_EXPRESSION)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option for alignment of arguments in try with resources statement (FORMATTER_ALIGNMENT_FOR_RESOURCES_IN_TRY)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_NEXT_PER_LINE, INDENT_DEFAULT)
Option for alignment of union type in multi-catch expression (FORMATTER_ALIGNMENT_FOR_UNION_TYPE_IN_MULTICATCH)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option for alignment of assignment (FORMATTER_ALIGNMENT_FOR_ASSIGNMENT)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, 0, INDENT_DEFAULT)
Option for alignment of binary expression (FORMATTER_ALIGNMENT_FOR_BINARY_EXPRESSION)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option for alignment of compact if (FORMATTER_ALIGNMENT_FOR_COMPACT_IF)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_ONE_PER_LINE, INDENT_BY_ONE)
Option for alignment of conditional expression (FORMATTER_ALIGNMENT_FOR_CONDITIONAL_EXPRESSION)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_ONE_PER_LINE, INDENT_DEFAULT)
Option for alignment of enum constants (FORMATTER_ALIGNMENT_FOR_ENUM_CONSTANTS)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_NO_SPLIT, INDENT_DEFAULT)
Option for alignment of expressions in array initializer (FORMATTER_ALIGNMENT_FOR_EXPRESSIONS_IN_ARRAY_INITIALIZER)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option for alignment of method declaration (FORMATTER_ALIGNMENT_FOR_METHOD_DECLARATION)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option for alignment of multiple fields (FORMATTER_ALIGNMENT_FOR_MULTIPLE_FIELDS)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option for alignment of parameters in constructor declaration (FORMATTER_ALIGNMENT_FOR_PARAMETERS_IN_CONSTRUCTOR_DECLARATION)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option for alignment of parameters in method declaration (FORMATTER_ALIGNMENT_FOR_PARAMETERS_IN_METHOD_DECLARATION)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option for alignment of selector in method invocation (FORMATTER_ALIGNMENT_FOR_SELECTOR_IN_METHOD_INVOCATION)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option for alignment of superclass in type declaration (FORMATTER_ALIGNMENT_FOR_SUPERCLASS_IN_TYPE_DECLARATION)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_NEXT_SHIFTED, INDENT_DEFAULT)
Option for alignment of superinterfaces in enum declaration (FORMATTER_ALIGNMENT_FOR_SUPERINTERFACES_IN_ENUM_DECLARATION)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option for alignment of superinterfaces in type declaration (FORMATTER_ALIGNMENT_FOR_SUPERINTERFACES_IN_TYPE_DECLARATION)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option for alignment of throws clause in constructor declaration (FORMATTER_ALIGNMENT_FOR_THROWS_CLAUSE_IN_CONSTRUCTOR_DECLARATION)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option for alignment of throws clause in method declaration (FORMATTER_ALIGNMENT_FOR_THROWS_CLAUSE_IN_METHOD_DECLARATION)
Possible value values returned by createAlignmentValue(boolean, int, int) call
Default value createAlignmentValue(false, WRAP_COMPACT, INDENT_DEFAULT)
Option to add blank lines after the imports declaration (FORMATTER_BLANK_LINES_AFTER_IMPORTS)
Possible value "<n>", where n is zero or a positive integer
Default value "0"
Option to add blank lines after the package declaration (FORMATTER_BLANK_LINES_AFTER_PACKAGE)
Possible value "<n>", where n is zero or a positive integer
Default value "0"
Option to add blank lines at the beginning of the method body (FORMATTER_BLANK_LINES_AT_BEGINNING_OF_METHOD_BODY)
Possible value "<n>", where n is zero or a positive integer
Default value "0"
Option to add blank lines before a field declaration (FORMATTER_BLANK_LINES_BEFORE_FIELD)
Possible value "<n>", where n is zero or a positive integer
Default value "0"
Option to add blank lines before the first class body declaration (FORMATTER_BLANK_LINES_BEFORE_FIRST_CLASS_BODY_DECLARATION)
Possible value "<n>", where n is zero or a positive integer
Default value "0"
Option to add blank lines before the imports declaration (FORMATTER_BLANK_LINES_BEFORE_IMPORTS)
Possible value "<n>", where n is zero or a positive integer
Default value "0"
Option to add blank lines before a member type declaration (FORMATTER_BLANK_LINES_BEFORE_MEMBER_TYPE)
Possible value "<n>", where n is zero or a positive integer
Default value "0"
Option to add blank lines before a method declaration (FORMATTER_BLANK_LINES_BEFORE_METHOD)
Possible value "<n>", where n is zero or a positive integer
Default value "0"
Option to add blank lines before a new chunk (FORMATTER_BLANK_LINES_BEFORE_NEW_CHUNK)
Possible value "<n>", where n is zero or a positive integer
Default value "0"
Option to add blank lines before the package declaration (FORMATTER_BLANK_LINES_BEFORE_PACKAGE)
Possible value "<n>", where n is zero or a positive integer
Default value "0"
Option to add blank lines between import groups (FORMATTER_BLANK_LINES_BETWEEN_IMPORT_GROUPS)
Possible value "<n>", where n is zero or a positive integer
Default value "1"
Option to add blank lines between type declarations (FORMATTER_BLANK_LINES_BETWEEN_TYPE_DECLARATIONS)
Possible value "<n>", where n is zero or a positive integer
Default value "0"
Option to position the braces of an annotation type declaration (FORMATTER_BRACE_POSITION_FOR_ANNOTATION_TYPE_DECLARATION)
Possible values END_OF_LINE
NEXT_LINE
NEXT_LINE_SHIFTED
NEXT_LINE_ON_WRAP
Option to position the braces of an anonymous type declaration (FORMATTER_BRACE_POSITION_FOR_ANONYMOUS_TYPE_DECLARATION)
Possible values END_OF_LINE
NEXT_LINE
NEXT_LINE_SHIFTED
NEXT_LINE_ON_WRAP
Option to position the braces of an array initializer (FORMATTER_BRACE_POSITION_FOR_ARRAY_INITIALIZER)
Possible values END_OF_LINE
NEXT_LINE
NEXT_LINE_SHIFTED
NEXT_LINE_ON_WRAP
Option to position the braces of a block (FORMATTER_BRACE_POSITION_FOR_BLOCK)
Possible values END_OF_LINE
NEXT_LINE
NEXT_LINE_SHIFTED
NEXT_LINE_ON_WRAP
Option to position the braces of a block in a case statement when the block is the first statement following (FORMATTER_BRACE_POSITION_FOR_BLOCK_IN_CASE)
Possible values END_OF_LINE
NEXT_LINE
NEXT_LINE_SHIFTED
NEXT_LINE_ON_WRAP
Option to position the braces of a constructor declaration (FORMATTER_BRACE_POSITION_FOR_CONSTRUCTOR_DECLARATION)
Possible values END_OF_LINE
NEXT_LINE
NEXT_LINE_SHIFTED
NEXT_LINE_ON_WRAP
Option to position the braces of an enum constant (FORMATTER_BRACE_POSITION_FOR_ENUM_CONSTANT)
Possible values END_OF_LINE
NEXT_LINE
NEXT_LINE_SHIFTED
NEXT_LINE_ON_WRAP
Option to position the braces of an enum declaration (FORMATTER_BRACE_POSITION_FOR_ENUM_DECLARATION)
Possible values END_OF_LINE
NEXT_LINE
NEXT_LINE_SHIFTED
NEXT_LINE_ON_WRAP
Option to position the braces of a method declaration (FORMATTER_BRACE_POSITION_FOR_METHOD_DECLARATION)
Possible values END_OF_LINE
NEXT_LINE
NEXT_LINE_SHIFTED
NEXT_LINE_ON_WRAP
Option to position the braces of a switch statement (FORMATTER_BRACE_POSITION_FOR_SWITCH)
Possible values END_OF_LINE
NEXT_LINE
NEXT_LINE_SHIFTED
NEXT_LINE_ON_WRAP
Option to position the braces of a type declaration (FORMATTER_BRACE_POSITION_FOR_TYPE_DECLARATION)
Possible values END_OF_LINE
NEXT_LINE
NEXT_LINE_SHIFTED
NEXT_LINE_ON_WRAP
Option to control whether blank lines are cleared inside block comments (FORMATTER_COMMENT_CLEAR_BLANK_LINES_IN_BLOCK_COMMENT)
Possible values TRUE
FALSE
Option to control whether blank lines are cleared inside javadoc comments (FORMATTER_COMMENT_CLEAR_BLANK_LINES_IN_JAVADOC_COMMENT)
Possible values TRUE
FALSE
Option to control whether multiple line comments are formatted (FORMATTER_COMMENT_FORMAT_BLOCK_COMMENT)
Possible values TRUE
FALSE
Option to control whether javadoc comments are formatted (FORMATTER_COMMENT_FORMAT_JAVADOC_COMMENT)
Possible values TRUE
FALSE
Option to control whether single line comments are formatted (FORMATTER_COMMENT_FORMAT_LINE_COMMENT)
Possible values TRUE
FALSE
Option to format line comments that start on the first column (FORMATTER_COMMENT_FORMAT_LINE_COMMENT_STARTING_ON_FIRST_COLUMN)
Possible values TRUE
FALSE
Option to control whether the header comment of a Java source file is formatted (FORMATTER_COMMENT_FORMAT_HEADER)
Possible values TRUE
FALSE
Option to control whether HTML tags are formatted. (FORMATTER_COMMENT_FORMAT_HTML)
Possible values TRUE
FALSE
Option to control whether code snippets are formatted in comments (FORMATTER_COMMENT_FORMAT_SOURCE)
Possible values TRUE
FALSE
Option to control whether description of Javadoc parameters are indented (FORMATTER_COMMENT_INDENT_PARAMETER_DESCRIPTION)
Possible values TRUE
FALSE
Option to control whether Javadoc root tags are indented. (FORMATTER_COMMENT_INDENT_ROOT_TAGS)
Possible values TRUE
FALSE
Option to insert an empty line before the Javadoc root tag block (FORMATTER_COMMENT_INSERT_EMPTY_LINE_BEFORE_ROOT_TAGS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line after Javadoc root tag parameters (FORMATTER_COMMENT_INSERT_NEW_LINE_FOR_PARAMETER)
Possible values INSERT
DO_NOT_INSERT
Option to specify the line length for comments. (FORMATTER_COMMENT_LINE_LENGTH)
Possible value "<n>", where n is zero or a positive integer
Default value "80"
Option to control whether block comments will have new lines at boundaries (FORMATTER_COMMENT_NEW_LINES_AT_BLOCK_BOUNDARIES)
Possible values TRUE
FALSE
Option to control whether javadoc comments will have new lines at boundaries (FORMATTER_COMMENT_NEW_LINES_AT_JAVADOC_BOUNDARIES)
Possible values TRUE
FALSE
Option to preserve existing white space between code and line comments (FORMATTER_COMMENT_PRESERVE_WHITE_SPACE_BETWEEN_CODE_AND_LINE_COMMENT)
Possible values TRUE
FALSE
Option to compact else/if (FORMATTER_COMPACT_ELSE_IF)
Possible values TRUE
FALSE
Option to set the continuation indentation (FORMATTER_CONTINUATION_INDENTATION)
Possible value "<n>", where n is zero or a positive integer
Default value "2"
Option to set the continuation indentation inside array initializer (FORMATTER_CONTINUATION_INDENTATION_FOR_ARRAY_INITIALIZER)
Possible value "<n>", where n is zero or a positive integer
Default value "2"
Option to use the disabling and enabling tags (FORMATTER_USE_ON_OFF_TAGS)
Possible values TRUE
FALSE
Option to define the tag to put in a comment to disable the formatting (FORMATTER_DISABLING_TAG)
Possible values String
Default value "@format:off"
Option to define the tag to put in a comment to re-enable the formatting after it has been disabled (FORMATTER_ENABLING_TAG)
Possible values String
Default value "@format:on"
Option to indent body declarations compare to its enclosing annotation declaration header (FORMATTER_INDENT_BODY_DECLARATIONS_COMPARE_TO_ANNOTATION_DECLARATION_HEADER)
Possible values TRUE
FALSE
Option to indent body declarations compare to its enclosing enum constant header (FORMATTER_INDENT_BODY_DECLARATIONS_COMPARE_TO_ENUM_CONSTANT_HEADER)
Possible values TRUE
FALSE
Option to indent body declarations compare to its enclosing enum declaration header (FORMATTER_INDENT_BODY_DECLARATIONS_COMPARE_TO_ENUM_DECLARATION_HEADER)
Possible values TRUE
FALSE
Option to indent body declarations compare to its enclosing type header (FORMATTER_INDENT_BODY_DECLARATIONS_COMPARE_TO_TYPE_HEADER)
Possible values TRUE
FALSE
Option to indent breaks compare to cases (FORMATTER_INDENT_BREAKS_COMPARE_TO_CASES)
Possible values TRUE
FALSE
Option to indent empty lines (FORMATTER_INDENT_EMPTY_LINES)
Possible values TRUE
FALSE
Option to indent statements inside a block (FORMATTER_INDENT_STATEMENTS_COMPARE_TO_BLOCK)
Possible values TRUE
FALSE
Option to indent statements inside the body of a method or a constructor (FORMATTER_INDENT_STATEMENTS_COMPARE_TO_BODY)
Possible values TRUE
FALSE
Option to indent switch statements compare to cases (FORMATTER_INDENT_SWITCHSTATEMENTS_COMPARE_TO_CASES)
Possible values TRUE
FALSE
Option to indent switch statements compare to switch (FORMATTER_INDENT_SWITCHSTATEMENTS_COMPARE_TO_SWITCH)
Possible values TRUE
FALSE
Option to specify the equivalent number of spaces that represents one indentation (FORMATTER_INDENTATION_SIZE)
Possible value "<n>", where n is zero or a positive integer
Default value "4"
Option to insert a new line after an annotation on a parameter (FORMATTER_INSERT_NEW_LINE_AFTER_ANNOTATION_ON_PARAMETER)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line after an annotation on a field declaration (FORMATTER_INSERT_NEW_LINE_AFTER_ANNOTATION_ON_FIELD)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line after an annotation on a method declaration (FORMATTER_INSERT_NEW_LINE_AFTER_ANNOTATION_ON_METHOD)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line after an annotation on a package declaration (FORMATTER_INSERT_NEW_LINE_AFTER_ANNOTATION_ON_PACKAGE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line after an annotation on a type declaration (FORMATTER_INSERT_NEW_LINE_AFTER_ANNOTATION_ON_TYPE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line after an annotation on a local variable (FORMATTER_INSERT_NEW_LINE_AFTER_ANNOTATION_ON_LOCAL_VARIABLE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line after a label (FORMATTER_INSERT_NEW_LINE_AFTER_LABEL)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line after the opening brace in an array initializer (FORMATTER_INSERT_NEW_LINE_AFTER_OPENING_BRACE_IN_ARRAY_INITIALIZER)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line at the end of the current file if missing (FORMATTER_INSERT_NEW_LINE_AT_END_OF_FILE_IF_MISSING)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line before the catch keyword in try statement (FORMATTER_INSERT_NEW_LINE_BEFORE_CATCH_IN_TRY_STATEMENT)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line before the closing brace in an array initializer (FORMATTER_INSERT_NEW_LINE_BEFORE_CLOSING_BRACE_IN_ARRAY_INITIALIZER)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line before the else keyword in if statement (FORMATTER_INSERT_NEW_LINE_BEFORE_ELSE_IN_IF_STATEMENT)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line before the finally keyword in try statement (FORMATTER_INSERT_NEW_LINE_BEFORE_FINALLY_IN_TRY_STATEMENT)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line before while in do statement (FORMATTER_INSERT_NEW_LINE_BEFORE_WHILE_IN_DO_STATEMENT)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line in an empty annotation declaration (FORMATTER_INSERT_NEW_LINE_IN_EMPTY_ANNOTATION_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line in an empty anonymous type declaration (FORMATTER_INSERT_NEW_LINE_IN_EMPTY_ANONYMOUS_TYPE_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line in an empty block (FORMATTER_INSERT_NEW_LINE_IN_EMPTY_BLOCK)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line in an empty enum constant (FORMATTER_INSERT_NEW_LINE_IN_EMPTY_ENUM_CONSTANT)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line in an empty enum declaration (FORMATTER_INSERT_NEW_LINE_IN_EMPTY_ENUM_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line in an empty method body (FORMATTER_INSERT_NEW_LINE_IN_EMPTY_METHOD_BODY)
Possible values INSERT
DO_NOT_INSERT
Option to insert a new line in an empty type declaration (FORMATTER_INSERT_NEW_LINE_IN_EMPTY_TYPE_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after and in wilcard (FORMATTER_INSERT_SPACE_AFTER_AND_IN_TYPE_PARAMETER)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after an assignment operator (FORMATTER_INSERT_SPACE_AFTER_ASSIGNMENT_OPERATOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after at in annotation (FORMATTER_INSERT_SPACE_AFTER_AT_IN_ANNOTATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after at in annotation type declaration (FORMATTER_INSERT_SPACE_AFTER_AT_IN_ANNOTATION_TYPE_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after a binary operator (FORMATTER_INSERT_SPACE_AFTER_BINARY_OPERATOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the closing angle bracket in type arguments (FORMATTER_INSERT_SPACE_AFTER_CLOSING_ANGLE_BRACKET_IN_TYPE_ARGUMENTS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the closing angle bracket in type parameters (FORMATTER_INSERT_SPACE_AFTER_CLOSING_ANGLE_BRACKET_IN_TYPE_PARAMETERS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the closing brace of a block (FORMATTER_INSERT_SPACE_AFTER_CLOSING_BRACE_IN_BLOCK)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the closing parenthesis of a cast expression (FORMATTER_INSERT_SPACE_AFTER_CLOSING_PAREN_IN_CAST)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the colon in an assert statement (FORMATTER_INSERT_SPACE_AFTER_COLON_IN_ASSERT)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after colon in a case statement when a opening brace follows the colon (FORMATTER_INSERT_SPACE_AFTER_COLON_IN_CASE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the colon in a conditional expression (FORMATTER_INSERT_SPACE_AFTER_COLON_IN_CONDITIONAL)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after colon in a for statement (FORMATTER_INSERT_SPACE_AFTER_COLON_IN_FOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the colon in a labeled statement (FORMATTER_INSERT_SPACE_AFTER_COLON_IN_LABELED_STATEMENT)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in an allocation expression (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_ALLOCATION_EXPRESSION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in annotation (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_ANNOTATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in an array initializer (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_ARRAY_INITIALIZER)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in the parameters of a constructor declaration (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_CONSTRUCTOR_DECLARATION_PARAMETERS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in the exception names in a throws clause of a constructor declaration (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_CONSTRUCTOR_DECLARATION_THROWS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in the arguments of an enum constant (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_ENUM_CONSTANT_ARGUMENTS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in enum declarations (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_ENUM_DECLARATIONS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in the arguments of an explicit constructor call (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_EXPLICIT_CONSTRUCTOR_CALL_ARGUMENTS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in the increments of a for statement (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_FOR_INCREMENTS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in the initializations of a for statement (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_FOR_INITS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in the parameters of a method declaration (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_METHOD_DECLARATION_PARAMETERS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in the exception names in a throws clause of a method declaration (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_METHOD_DECLARATION_THROWS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in the arguments of a method invocation (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_METHOD_INVOCATION_ARGUMENTS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in multiple field declaration (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_MULTIPLE_FIELD_DECLARATIONS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in multiple local declaration (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_MULTIPLE_LOCAL_DECLARATIONS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in parameterized type reference (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_PARAMETERIZED_TYPE_REFERENCE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in superinterfaces names of a type header (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_SUPERINTERFACES)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in type arguments (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_TYPE_ARGUMENTS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the comma in type parameters (FORMATTER_INSERT_SPACE_AFTER_COMMA_IN_TYPE_PARAMETERS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after ellipsis (FORMATTER_INSERT_SPACE_AFTER_ELLIPSIS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening angle bracket in parameterized type reference (FORMATTER_INSERT_SPACE_AFTER_OPENING_ANGLE_BRACKET_IN_PARAMETERIZED_TYPE_REFERENCE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening angle bracket in type arguments (FORMATTER_INSERT_SPACE_AFTER_OPENING_ANGLE_BRACKET_IN_TYPE_ARGUMENTS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening angle bracket in type parameters (FORMATTER_INSERT_SPACE_AFTER_OPENING_ANGLE_BRACKET_IN_TYPE_PARAMETERS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening brace in an array initializer (FORMATTER_INSERT_SPACE_AFTER_OPENING_BRACE_IN_ARRAY_INITIALIZER)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening bracket inside an array allocation expression (FORMATTER_INSERT_SPACE_AFTER_OPENING_BRACKET_IN_ARRAY_ALLOCATION_EXPRESSION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening bracket inside an array reference (FORMATTER_INSERT_SPACE_AFTER_OPENING_BRACKET_IN_ARRAY_REFERENCE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening parenthesis in annotation (FORMATTER_INSERT_SPACE_AFTER_OPENING_PAREN_IN_ANNOTATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening parenthesis in a cast expression (FORMATTER_INSERT_SPACE_AFTER_OPENING_PAREN_IN_CAST)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening parenthesis in a catch (FORMATTER_INSERT_SPACE_AFTER_OPENING_PAREN_IN_CATCH)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening parenthesis in a constructor declaration (FORMATTER_INSERT_SPACE_AFTER_OPENING_PAREN_IN_CONSTRUCTOR_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening parenthesis in enum constant (FORMATTER_INSERT_SPACE_AFTER_OPENING_PAREN_IN_ENUM_CONSTANT)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening parenthesis in a for statement (FORMATTER_INSERT_SPACE_AFTER_OPENING_PAREN_IN_FOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening parenthesis in an if statement (FORMATTER_INSERT_SPACE_AFTER_OPENING_PAREN_IN_IF)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening parenthesis in a method declaration (FORMATTER_INSERT_SPACE_AFTER_OPENING_PAREN_IN_METHOD_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening parenthesis in a method invocation (FORMATTER_INSERT_SPACE_AFTER_OPENING_PAREN_IN_METHOD_INVOCATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening parenthesis in a parenthesized expression (FORMATTER_INSERT_SPACE_AFTER_OPENING_PAREN_IN_PARENTHESIZED_EXPRESSION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening parenthesis in a switch statement (FORMATTER_INSERT_SPACE_AFTER_OPENING_PAREN_IN_SWITCH)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening parenthesis in a synchronized statement (FORMATTER_INSERT_SPACE_AFTER_OPENING_PAREN_IN_SYNCHRONIZED)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening parenthesis in a try with resources statement (FORMATTER_INSERT_SPACE_AFTER_OPENING_PAREN_IN_TRY)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after the opening parenthesis in a while statement (FORMATTER_INSERT_SPACE_AFTER_OPENING_PAREN_IN_WHILE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after a postfix operator (FORMATTER_INSERT_SPACE_AFTER_POSTFIX_OPERATOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after a prefix operator (FORMATTER_INSERT_SPACE_AFTER_PREFIX_OPERATOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after question mark in a conditional expression (FORMATTER_INSERT_SPACE_AFTER_QUESTION_IN_CONDITIONAL)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after question mark in a wildcard (FORMATTER_INSERT_SPACE_AFTER_QUESTION_IN_WILDCARD)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after semicolon in a for statement (FORMATTER_INSERT_SPACE_AFTER_SEMICOLON_IN_FOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after each semicolon in a try with resources statement (FORMATTER_INSERT_SPACE_AFTER_SEMICOLON_IN_TRY_RESOURCES)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space after an unary operator (FORMATTER_INSERT_SPACE_AFTER_UNARY_OPERATOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before and in wildcard (FORMATTER_INSERT_SPACE_BEFORE_AND_IN_TYPE_PARAMETER)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before an assignment operator (FORMATTER_INSERT_SPACE_BEFORE_ASSIGNMENT_OPERATOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before at in annotation type declaration (FORMATTER_INSERT_SPACE_BEFORE_AT_IN_ANNOTATION_TYPE_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before an binary operator (FORMATTER_INSERT_SPACE_BEFORE_BINARY_OPERATOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing angle bracket in parameterized type reference (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_ANGLE_BRACKET_IN_PARAMETERIZED_TYPE_REFERENCE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing angle bracket in type arguments (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_ANGLE_BRACKET_IN_TYPE_ARGUMENTS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing angle bracket in type parameters (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_ANGLE_BRACKET_IN_TYPE_PARAMETERS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing brace in an array initializer (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_BRACE_IN_ARRAY_INITIALIZER)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing bracket in an array allocation expression (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_BRACKET_IN_ARRAY_ALLOCATION_EXPRESSION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing bracket in an array reference (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_BRACKET_IN_ARRAY_REFERENCE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing parenthesis in annotation (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_PAREN_IN_ANNOTATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing parenthesis in a cast expression (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_PAREN_IN_CAST)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing parenthesis in a catch (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_PAREN_IN_CATCH)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing parenthesis in a constructor declaration (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_PAREN_IN_CONSTRUCTOR_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing parenthesis in enum constant (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_PAREN_IN_ENUM_CONSTANT)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing parenthesis in a for statement (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_PAREN_IN_FOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing parenthesis in an if statement (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_PAREN_IN_IF)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing parenthesis in a method declaration (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_PAREN_IN_METHOD_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing parenthesis in a method invocation (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_PAREN_IN_METHOD_INVOCATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing parenthesis in a parenthesized expression (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_PAREN_IN_PARENTHESIZED_EXPRESSION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing parenthesis in a switch statement (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_PAREN_IN_SWITCH)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing parenthesis in a synchronized statement (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_PAREN_IN_SYNCHRONIZED)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before closing paranthesis in a try with resources statement (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_PAREN_IN_TRY)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the closing parenthesis in a while statement (FORMATTER_INSERT_SPACE_BEFORE_CLOSING_PAREN_IN_WHILE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before colon in an assert statement (FORMATTER_INSERT_SPACE_BEFORE_COLON_IN_ASSERT)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before colon in a case statement (FORMATTER_INSERT_SPACE_BEFORE_COLON_IN_CASE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before colon in a conditional expression (FORMATTER_INSERT_SPACE_BEFORE_COLON_IN_CONDITIONAL)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before colon in a default statement (FORMATTER_INSERT_SPACE_BEFORE_COLON_IN_DEFAULT)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before colon in a for statement (FORMATTER_INSERT_SPACE_BEFORE_COLON_IN_FOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before colon in a labeled statement (FORMATTER_INSERT_SPACE_BEFORE_COLON_IN_LABELED_STATEMENT)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in an allocation expression (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_ALLOCATION_EXPRESSION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in annotation (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_ANNOTATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in an array initializer (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_ARRAY_INITIALIZER)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in the parameters of a constructor declaration (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_CONSTRUCTOR_DECLARATION_PARAMETERS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in the exception names of the throws clause of a constructor declaration (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_CONSTRUCTOR_DECLARATION_THROWS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in the arguments of enum constant (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_ENUM_CONSTANT_ARGUMENTS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in enum declarations (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_ENUM_DECLARATIONS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in the arguments of an explicit constructor call (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_EXPLICIT_CONSTRUCTOR_CALL_ARGUMENTS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in the increments of a for statement (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_FOR_INCREMENTS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in the initializations of a for statement (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_FOR_INITS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in the parameters of a method declaration (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_METHOD_DECLARATION_PARAMETERS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in the exception names of the throws clause of a method declaration (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_METHOD_DECLARATION_THROWS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in the arguments of a method invocation (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_METHOD_INVOCATION_ARGUMENTS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in a multiple field declaration (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_MULTIPLE_FIELD_DECLARATIONS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in a multiple local declaration (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_MULTIPLE_LOCAL_DECLARATIONS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in parameterized type reference (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_PARAMETERIZED_TYPE_REFERENCE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in the superinterfaces names in a type header (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_SUPERINTERFACES)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in type arguments (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_TYPE_ARGUMENTS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before comma in type parameters (FORMATTER_INSERT_SPACE_BEFORE_COMMA_IN_TYPE_PARAMETERS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before ellipsis (FORMATTER_INSERT_SPACE_BEFORE_ELLIPSIS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening angle bracket in parameterized type reference (FORMATTER_INSERT_SPACE_BEFORE_OPENING_ANGLE_BRACKET_IN_PARAMETERIZED_TYPE_REFERENCE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening angle bracket in type arguments (FORMATTER_INSERT_SPACE_BEFORE_OPENING_ANGLE_BRACKET_IN_TYPE_ARGUMENTS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening angle bracket in type parameters (FORMATTER_INSERT_SPACE_BEFORE_OPENING_ANGLE_BRACKET_IN_TYPE_PARAMETERS)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening brace in an annotation type declaration (FORMATTER_INSERT_SPACE_BEFORE_OPENING_BRACE_IN_ANNOTATION_TYPE_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening brace in an anonymous type declaration (FORMATTER_INSERT_SPACE_BEFORE_OPENING_BRACE_IN_ANONYMOUS_TYPE_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening brace in an array initializer (FORMATTER_INSERT_SPACE_BEFORE_OPENING_BRACE_IN_ARRAY_INITIALIZER)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening brace in a block (FORMATTER_INSERT_SPACE_BEFORE_OPENING_BRACE_IN_BLOCK)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening brace in a constructor declaration (FORMATTER_INSERT_SPACE_BEFORE_OPENING_BRACE_IN_CONSTRUCTOR_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening brace in an enum constant (FORMATTER_INSERT_SPACE_BEFORE_OPENING_BRACE_IN_ENUM_CONSTANT)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening brace in an enum declaration (FORMATTER_INSERT_SPACE_BEFORE_OPENING_BRACE_IN_ENUM_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening brace in a method declaration (FORMATTER_INSERT_SPACE_BEFORE_OPENING_BRACE_IN_METHOD_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening brace in a switch statement (FORMATTER_INSERT_SPACE_BEFORE_OPENING_BRACE_IN_SWITCH)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening brace in a type declaration (FORMATTER_INSERT_SPACE_BEFORE_OPENING_BRACE_IN_TYPE_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening bracket in an array allocation expression (FORMATTER_INSERT_SPACE_BEFORE_OPENING_BRACKET_IN_ARRAY_ALLOCATION_EXPRESSION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening bracket in an array reference (FORMATTER_INSERT_SPACE_BEFORE_OPENING_BRACKET_IN_ARRAY_REFERENCE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening bracket in an array type reference (FORMATTER_INSERT_SPACE_BEFORE_OPENING_BRACKET_IN_ARRAY_TYPE_REFERENCE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening parenthesis in annotation (FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_ANNOTATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening parenthesis in annotation type member declaration (FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_ANNOTATION_TYPE_MEMBER_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening parenthesis in a catch (FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_CATCH)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening parenthesis in a constructor declaration (FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_CONSTRUCTOR_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening parenthesis in enum constant (FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_ENUM_CONSTANT)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening parenthesis in a for statement (FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_FOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening parenthesis in an if statement (FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_IF)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening parenthesis in a method declaration (FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_METHOD_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening parenthesis in a method invocation (FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_METHOD_INVOCATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening parenthesis in a parenthesized expression (FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_PARENTHESIZED_EXPRESSION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening parenthesis in a switch statement (FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_SWITCH)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening parenthesis in a synchronized statement (FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_SYNCHRONIZED)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening parenthesis in a try with resources statement (FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_TRY)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before the opening parenthesis in a while statement (FORMATTER_INSERT_SPACE_BEFORE_OPENING_PAREN_IN_WHILE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before parenthesized expression in return statement (FORMATTER_INSERT_SPACE_BEFORE_PARENTHESIZED_EXPRESSION_IN_RETURN)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before parenthesized expression in throw statement (FORMATTER_INSERT_SPACE_BEFORE_PARENTHESIZED_EXPRESSION_IN_THROW)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before a postfix operator (FORMATTER_INSERT_SPACE_BEFORE_POSTFIX_OPERATOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before a prefix operator (FORMATTER_INSERT_SPACE_BEFORE_PREFIX_OPERATOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before question mark in a conditional expression (FORMATTER_INSERT_SPACE_BEFORE_QUESTION_IN_CONDITIONAL)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before question mark in a wildcard (FORMATTER_INSERT_SPACE_BEFORE_QUESTION_IN_WILDCARD)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before semicolon (FORMATTER_INSERT_SPACE_BEFORE_SEMICOLON)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before semicolon in for statement (FORMATTER_INSERT_SPACE_BEFORE_SEMICOLON_IN_FOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before each semicolon in try with resources statement (FORMATTER_INSERT_SPACE_BEFORE_SEMICOLON_IN_TRY_RESOURCES)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space before unary operator (FORMATTER_INSERT_SPACE_BEFORE_UNARY_OPERATOR)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space between brackets in an array type reference (FORMATTER_INSERT_SPACE_BETWEEN_BRACKETS_IN_ARRAY_TYPE_REFERENCE)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space between empty braces in an array initializer (FORMATTER_INSERT_SPACE_BETWEEN_EMPTY_BRACES_IN_ARRAY_INITIALIZER)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space between empty brackets in an array allocation expression (FORMATTER_INSERT_SPACE_BETWEEN_EMPTY_BRACKETS_IN_ARRAY_ALLOCATION_EXPRESSION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space between empty parenthesis in an annotation type member declaration (FORMATTER_INSERT_SPACE_BETWEEN_EMPTY_PARENS_IN_ANNOTATION_TYPE_MEMBER_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space between empty parenthesis in a constructor declaration (FORMATTER_INSERT_SPACE_BETWEEN_EMPTY_PARENS_IN_CONSTRUCTOR_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space between empty parenthesis in enum constant (FORMATTER_INSERT_SPACE_BETWEEN_EMPTY_PARENS_IN_ENUM_CONSTANT)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space between empty parenthesis in a method declaration (FORMATTER_INSERT_SPACE_BETWEEN_EMPTY_PARENS_IN_METHOD_DECLARATION)
Possible values INSERT
DO_NOT_INSERT
Option to insert a space between empty parenthesis in a method invocation (FORMATTER_INSERT_SPACE_BETWEEN_EMPTY_PARENS_IN_METHOD_INVOCATION)
Possible values INSERT
DO_NOT_INSERT
Option to keep else statement on the same line (FORMATTER_KEEP_ELSE_STATEMENT_ON_SAME_LINE)
Possible values TRUE
FALSE
Option to keep empty array initializer one line (FORMATTER_KEEP_EMPTY_ARRAY_INITIALIZER_ON_ONE_LINE)
Possible values TRUE
FALSE
Option to keep guardian clause on one line (FORMATTER_KEEP_GUARDIAN_CLAUSE_ON_ONE_LINE)
Possible values TRUE
FALSE
Option to keep simple if statement on the one line (FORMATTER_KEEP_SIMPLE_IF_ON_ONE_LINE)
Possible values TRUE
FALSE
Option to keep then statement on the same line (FORMATTER_KEEP_THEN_STATEMENT_ON_SAME_LINE)
Possible values TRUE
FALSE
Option to specify the length of the page. Beyond this length, the formatter will try to split the code (FORMATTER_LINE_SPLIT)
Possible value "<n>", where n is zero or a positive integer
Default value "80"
Option to indent block comments that start on the first column (FORMATTER_NEVER_INDENT_BLOCK_COMMENTS_ON_FIRST_COLUMN)
Possible values TRUE
FALSE
Option to indent line comments that start on the first column (FORMATTER_NEVER_INDENT_LINE_COMMENTS_ON_FIRST_COLUMN)
Possible values TRUE
FALSE
Option to specify the number of empty lines to preserve (FORMATTER_NUMBER_OF_EMPTY_LINES_TO_PRESERVE)
Possible value "<n>", where n is zero or a positive integer
Default value "0"
Option to specify whether or not empty statement should be on a new line (FORMATTER_PUT_EMPTY_STATEMENT_ON_NEW_LINE)
Possible values TRUE
FALSE
Option to specify the tabulation size (FORMATTER_TAB_CHAR)
Possible values TAB
SPACE
MIXED
Option to specify the equivalent number of spaces that represents one tabulation (FORMATTER_TAB_SIZE)
Possible value "<n>", where n is zero or a positive integer
Default value "4"
Option to use tabulations only for leading indentations (FORMATTER_USE_TABS_ONLY_FOR_LEADING_INDENTATIONS)
Possible values TRUE
FALSE
Option to wrap before the binary operator (FORMATTER_WRAP_BEFORE_BINARY_OPERATOR)
Possible values TRUE
FALSE
Option to wrap before OR operator in a multi-catch expression (FORMATTER_WRAP_BEFORE_OR_OPERATOR_MULTICATCH)
Possible values TRUE
FALSE
Option to wrap outer expressions in nested expressions (FORMATTER_WRAP_OUTER_EXPRESSIONS_WHEN_NESTED)
Possible values TRUE
FALSE

CodeAssist options

Description Values
Define the Prefixes for Argument Name (CODEASSIST_ARGUMENT_PREFIXES)
When the prefixes is non empty, completion for argument name will begin with one of the proposed prefixes. {<prefix>[,<prefix>]*}.
Default value is ""
Define the Suffixes for Argument Name (CODEASSIST_ARGUMENT_SUFFIXES)
When the suffixes is non empty, completion for argument name will end with one of the proposed suffixes. {<suffix>[,<suffix>]*}.
Default value is ""
Activate Camel Case Sensitive Completion (CODEASSIST_CAMEL_CASE_MATCH)
When enabled, completion shows proposals whose name match the CamelCase pattern. ENABLED
DISABLED
Activate Substring Code Completion (CODEASSIST_SUBSTRING_MATCH)
When enabled, completion shows proposals in which the pattern can be found as a substring in a case-insensitive way. ENABLED
DISABLED
Activate Deprecation Sensitive Completion (CODEASSIST_DEPRECATION_CHECK)
When enabled, completion doesn't propose deprecated members and types. ENABLED
DISABLED
Activate Discouraged Reference Sensitive Completion (CODEASSIST_DISCOURAGED_REFERENCE_CHECK)
When enabled, completion doesn't propose elements which match a discouraged reference rule. ENABLED
DISABLED
Define the Prefixes for Field Name (CODEASSIST_FIELD_PREFIXES)
When the prefixes is non empty, completion for field name will begin with one of the proposed prefixes. {<prefix>[,<prefix>]*}.
Default value is ""
Define the Suffixes for Field Name (CODEASSIST_FIELD_SUFFIXES)
When the suffixes is non empty, completion for field name will end with one of the proposed suffixes. {<suffix>[,<suffix>]*}.
Default value is ""
Activate Forbidden Reference Sensitive Completion (CODEASSIST_FORBIDDEN_REFERENCE_CHECK)
When enabled, completion doesn't propose elements which match a forbidden reference rule. ENABLED
DISABLED
Automatic Qualification of Implicit Members (CODEASSIST_IMPLICIT_QUALIFICATION)
When enabled, completion automatically qualifies completion on implicit field references and message expressions. ENABLED
DISABLED
Define the Prefixes for Local Variable Name (CODEASSIST_LOCAL_PREFIXES)
When the prefixes is non empty, completion for local variable name will begin with one of the proposed prefixes. {<prefix>[,<prefix>]*}.
Default value is ""
Define the Suffixes for Local Variable Name (CODEASSIST_LOCAL_SUFFIXES)
When the suffixes is non empty, completion for local variable name will end with one of the proposed suffixes. {<suffix>[,<suffix>]*}.
Default value is ""
Define the Prefixes for Static Field Name (CODEASSIST_STATIC_FIELD_PREFIXES)
When the prefixes is non empty, completion for static field name will begin with one of the proposed prefixes. {<prefix>[,<prefix>]*}.
Default value is ""
Define the Suffixes for Static Field Name (CODEASSIST_STATIC_FIELD_SUFFIXES)
When the suffixes is non empty, completion for static field name will end with one of the proposed suffixes. {<suffix>[,<suffix>]*}.
Default value is ""
Activate Suggestion of Static Import (CODEASSIST_SUGGEST_STATIC_IMPORTS)
When enabled, completion proposals can contain static import pattern. ENABLED
DISABLED
Activate Visibility Sensitive Completion (CODEASSIST_VISIBILITY_CHECK)
When enabled, completion doesn't propose elements that are not visible at the insertion point according to Java visibility rules (e.g. the private methods of a super class are not proposed). ENABLED
DISABLED