This page summarizes all the work that must be done to add Java™ 8 support to JDT Debug.
Current Status at a Glance
Java 8 features
| Default Methods
|| Lambda Expressions
|| Type Annotations
|| Method References
|| Completely implemented
| Partially implemented or "can be improved"
| Not tested yet
The following work items for Java 8 support:
- Bug 421938 - [1.8] ExecutionEnvironmentDescription#getVMArguments does not preserve VM arguments
- Bug 422016 - [1.8] Having reference expressions or lambdas in file triggers warning for missing line numbers
- Bug 422029 - [1.8] Enable debug evaluation support for default methods
- Bug 427075 - [1.8] Unable to set breakpoint in interface methods
- Bug 427077 - [1.8] Unable to evaluate expressions in the context of an interface
- Bug 427082 - [1.8] Hover does not show variable's value while debugging in lambda expression
- Bug 427089 - [1.8] Debugger evaluations fail silently with lambdas or method references
- Bug 428862 - [1.8] Unable to install breakpoint
The remaining work items for Java 8 support:
- Bug 421806 - [1.8] Debug support for Java 8
- Bug 422015 - [1.8] Handle debugger stack frames containing function objects and lambda implementation methods
- Bug 426903 - [1.8] Cannot evaluate super call to default method
- Bug 427086 - [1.8] Cannot continue debugging -Obsolete methods on the stack
- Bug 427110 - [1.8] Open Actual Type / Hierarchy in Variables view for lambda and method reference
- Bug 430839 - [1.8] Cannot inspect static method of interface
How to Test
- Get the debug source from the JDT Debug git repo.
- Follow the instructions on testing the Java™ 8 support on the JDT Core wiki page.