jdt core - build notes 3.0 stream
java development tooling core |
Here are the build notes for the Eclipse JDT/Core plug-in project org.eclipse.jdt.core, describing bug resolution and substantial changes in the HEAD branch. This present document covers all changes since Release 2.1 (also see a summary of API changes). Older changes which occurred up to Release 2.1 can be found in build notes R2.1. |
JavaCore.newLibraryEntry(...)
will now allow an empty source attachment (new Path("")
) to
be equivalent to no source attachment (i.e. null
). This adjustment is made necessary for
library entries generated from classpath variables which cannot be set to null
. Also see
bug 38531.
* @param sourceAttachmentPath the absolute path of the corresponding source archive or folder, * ornull
if none. Note, since 3.0, an empty path is allowed to denote no source attachment. * and will be automatically converted tonull
.
IJavaProject#forceClasspathReload(IProgressMonitor)
to force reload of .classpath
file
before next automatic update occurs.
/** * Force the project to reload its.classpath
file from disk and update the classpath accordingly. * Usually, a change to the.classpath
file is automatically noticed and reconciled at the next * resource change notification event. If required to consider such a change prior to the next automatic * refresh, then this functionnality should be used to trigger a refresh. In particular, if a change to the file is performed, * during an operation where this change needs to be reflected before the operation ends, then an explicit refresh is * necessary. * * @param monitor a progress monitor for reporting operation progress * @exception JavaModelException if the classpath could not be updated. Reasons * include: * - This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
CPE_PROJECT
refers to this project (INVALID_PATH)
* - This Java element does not exist (ELEMENT_DOES_NOT_EXIST)
* - The output location path refers to a location not contained in this project (PATH_OUTSIDE_PROJECT
)
* - The output location path is not an absolute path (RELATIVE_PATH
)
* - The output location path is nested inside a package fragment root of this project (INVALID_PATH
)
* - The classpath is being modified during resource change event notification (CORE_EXCEPTION)
* @since 3.0
*/
JavaCore
optional problem to detect incompatible required binaries, so as to flag situations where
some prerequisite binaries are required a JRE level higher than the project target platform; i.e. compiling against 1.4 libraries
when deploying for 1.1 platform is likely unwanted.
* JAVACORE / Reporting Incompatible JDK Level for Required Binaries * 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). * - option id: "org.eclipse.jdt.core.incompatibleJDKLevel" * - possible values: { "error", "warning", "ignore" } * - default: "ignore"
"ignore"
.
"ignore"
.
* COMPILER / Reporting 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). * - option id: "org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment" * - possible values: { "error", "warning", "ignore" } * - default: "warning"
* COMPILER / Reporting Local Variable Declaration Hiding another Variable * 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). * - option id: "org.eclipse.jdt.core.compiler.problem.localVariableHiding" * - possible values: { "error", "warning", "ignore" } * - default: "warning" * * COMPILER / Reporting Field Declaration Hiding another Variable * 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). * - option id: "org.eclipse.jdt.core.compiler.problem.fieldHiding" * - possible values: { "error", "warning", "ignore" } * - default: "warning" * * COMPILER / Reporting Special Parameter Hiding another 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). * The severity of the problem is controlled with option "org.eclipse.jdt.core.compiler.problem.localVariableHiding". * - option id: "org.eclipse.jdt.core.compiler.problem.specialParameterHidingField" * - possible values: { "enabled", "disabled" } * - default: "disabled"