|Mailing List • Forums • IRC • mattermost|
|Open • Help Wanted • Bug Day|
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|
||Partially tested or "requires more testing"|
||Not tested yet|
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:
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.launching project from the JDT Debug git repo and checkout the BETA_JAVA8 branch.
- You will have an error marker for using the wrong arguments of ILaunchConfiguration, for now ignore this
- 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 one issue in jdt launching). Launch a target workbench to test on. In the target workbench do the following make sure to add a Java 8 JRE to the installed JREs. You can now cherry pick commits onto BETA_JAVA8_LUNA and test them in the target workbench.