This page summarizes the work that is being done to add Java™ 8 support into Eclipse.
Java 8 features that are complete and ready to be tested (save for some very minor defects)
- JSR 308 - Type Annotations
- Meta data enhancement specification:
- JEP120: Repeating annotations
- JEP118: Runtime access to parameter names
- JSR269 Enhancements for Pluggable Annotation Processor API and javax.lang.model APIs
- Formatter, Code completion, code navigation, search & indexing, Reconciler support for all the above
- Basic IDE enablement (AST APIs) for all of Java 8
- JSR308 type annotations based null analysis (substantially complete - some open issues exist)
- Default & static Methods in interfaces (part of JSR 335)
- JSR 335 features are substantially in place except in the areas of overload resolution and type inference.
What work is pending ?
Updates are filed in the top level bug [380190 - Add support for Java SE 8]
JDT UI changes are tracked in JDT UI/Java8
|Lambda Expressions||Method references||Default Methods||Overload resolution||Type Inference|
|Grammar / Parser||NA||NA|
|Syntax Error recovery||NA||NA|
|Class file generation||NA||NA|
|Search Engine (Manoj)||NA||NA|
|Code select (Anirban)||NA||NA|
|Code completion (Anirban)||NA||NA|
|Substantially complete, with open items|
||Not Started yet|
- The following lines must be added in all headers of modified files for Java™ 8 implementation:
* This is an implementation of an early-draft specification developed under the Java * Community Process (JCP) and is made available for testing and evaluation purposes * only. The code is not compatible with any specification of the JCP. *
- Use the following @since tag on all newly added members: "3.9 BETA_JAVA8"
Early access binaries
A nightly built feature patch for the BETA_JAVA8 development branch is available from the update site http://dist.springsource.com/snapshot/TOOLS/java8/e43. We recommend that you install a fresh 4.3.1 and apply the feature patch from that update site. The feature patch can also be applied on 4.4 M2, but PDE API Tooling will not work.
This is a work in progress. The contents of the BETA_JAVA8 branch will be updated as the changes are made to the JSR Specification. Please use the early access builds only in a test/evaluation mode and not in the real development environment. If you need any help with this, please contact the JDT/Core team through either the forum or Bugzilla.