Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "JDT Core/Java8"
(→What to do to set up the IDE) |
(→What to do to set up the IDE) |
||
Line 131: | Line 131: | ||
**JDT Debug repository - git://git.eclipse.org/gitroot/jdt/eclipse.jdt.debug.git | **JDT Debug repository - git://git.eclipse.org/gitroot/jdt/eclipse.jdt.debug.git | ||
**Equinox OSGi repository: git://git.eclipse.org/gitroot/equinox/rt.equinox.framework.git | **Equinox OSGi repository: git://git.eclipse.org/gitroot/equinox/rt.equinox.framework.git | ||
− | **For tests: Releng repository - git://git.eclipse.org/gitroot/platform/eclipse.platform.releng.git | + | **For tests: |
+ | ***Releng repository - git://git.eclipse.org/gitroot/platform/eclipse.platform.releng.git | ||
+ | ***Text repository - git://git.eclipse.org/gitroot/platform/eclipse.platform.text.git | ||
*For more information on how to work with git repositories, look at http://wiki.eclipse.org/Platform-releng/Git_Workflows . | *For more information on how to work with git repositories, look at http://wiki.eclipse.org/Platform-releng/Git_Workflows . |
Revision as of 07:52, 29 October 2013
This page summarizes the work that is being done to add Java™ 8 support into Eclipse.
Contents
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 | |||
Compiler | |||||
Reconciler | 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 |
Done | |
Substantially complete, with open items | |
In Progress | |
|
Not Started yet |
NA | Not Applicable |
IMPORTANT NOTE
- 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"
What to do to set up the IDE
- You need to install a JDK 8 build as an installed JRE in order to compile org.eclipse.jdt.annotation and run the tests using the JavaSE-1.8 Execution Environment.
- Use the exact name "JavaSE-1.8" for the JRE
- Checkout the BETA_JAVA8 branch of the following git repositories:
- JDT Core repository - git://git.eclipse.org/gitroot/jdt/eclipse.jdt.core.git
- JDT UI repository - git://git.eclipse.org/gitroot/jdt/eclipse.jdt.ui.git
- JDT Debug repository - git://git.eclipse.org/gitroot/jdt/eclipse.jdt.debug.git
- Equinox OSGi repository: git://git.eclipse.org/gitroot/equinox/rt.equinox.framework.git
- For tests:
- Releng repository - git://git.eclipse.org/gitroot/platform/eclipse.platform.releng.git
- Text repository - git://git.eclipse.org/gitroot/platform/eclipse.platform.text.git
- For more information on how to work with git repositories, look at http://wiki.eclipse.org/Platform-releng/Git_Workflows .
- Set R4.3.1 as Target Platform.
- Set R4.3.1 as API Baseline.
- If you are going to be running Ant builds (stand-alone or as project builders) using the 1.8 javac target, you should read the following wiki: Ant / Java 8.
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.
Disclaimer
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.