PDE/API Tools/Java8
< PDE | API Tools
Revision as of 17:57, 4 March 2014 by Curtis.windatt.public.gmail.com (Talk | contribs)
API Tools | |
Website | |
Download | |
Community | |
Mailing List • Forums • IRC • mattermost | |
Issues | |
Open • Help Wanted • Bug Day | |
Contribute | |
Browse Source |
This page summarizes all the work that must be done to add Java™ 8 support to API Tools.
Current Status at a Glance
Default Methods | Lambda Expressions | Type Annotations | Method References | Update to ASM 5.x |
---|
Completely tested | |
|
Partially tested or "requires more testing" |
|
Not tested yet |
Current Status
The root bug for tracking all Java 8 work in API tools is bug 410447 So far there are 4 nodes that we need to support in usage and tag scanning:
- IntersectionType
- LambdaExpression
- PackageQualifiedType
- ExtraDimension
We have to update ASM to a 5.x version to have the delta comparator work. This is covered in bug 390930
How to Test 4.3
- Get the API tools source from the PDE UI git repo.
- Follow the instructions on testing the Java™ 8 support on the JDT Core wiki page.
How to Test 4.4
- Use a 4.4 Eclipse build with the default target platform
- Get the latest API tools source from the PDE UI git repo switch to the BETA_JAVA8_LUNA branch.
- Get the org.eclipse.jdt.core project from the JDT Core git repo and checkout the BETA_JAVA8 branch.
- Also get org.eclipse.jdt.core.tests.builder and org.eclipse.jdt.core.tests.compiler to run API Tools tests
- Get the org.eclipse.jdt.ui project from the JDT UI git repo and checkout the BETA_JAVA8 branch.
- Get the org.eclipse.jdt.debug and org.eclipse.jdt.debug.ui projects from the JDT Debug git repo and checkout the BETA_JAVA8 branch.
- Errors from unchecked casts can be ignored
- Either set up a 4.3 baseline or turn off error for missing baseline on API Baselines pref page
- Either install EE descriptions or turn off errors for them on API Errors/Warnings pref page and project property settings
- Turn off API Tools errors on JDT UI via preference or property page
At this point you should have a compiling workspace with no errors (except possibly generics issues in jdt debug). Launch a target workbench to test on. In the target workbench do the following:
- Add a Java 8 JRE to the list of installed JREs
- Create a new plug-in project with a Java 1.8 Execution Environment and API Tools enabled
Depending on the state of the branch you will get an error on the project saying Java 8 bytecodes are not supported.