intellij idea - Debugger cannot see local variable in a Lambda -
i noticed when hover mouse on local variable when debugger stopped within lambda study cannot find local variable 'variable_name' if it's visible within lambda , it's used.
example code
public class main { public static void main(string[] args) { string = "hello_world"; m1(a); } private static void m1(string a) { accesscontroller.doprivileged((privilegedaction<string>) () -> { system.out.println("blala " + a); homecoming "abc"; }); } } try breakpoint in system.out.println("blala " + a); , after return "abc" , study same error.
i used accesscontroller.doprivileged because it's used in original code , of course of study i'm using java 8.
it says same thing in watchers , evaluate expression.
i tried using "anonymous class" version , debugger sees value of a correctly
private static void m1(string a) { accesscontroller.doprivileged(new privilegedaction<string>() { @override public string run() { system.out.println("blala " + a); homecoming "abc"; } }); } i'm missing lambda expressions or it's intellij thought 14 bug?
i don't want study bug right because reported bug caused code instead of intellij idea, want sure before (and because don't utilize java 8 often, wrong).
this appears know issue. according jetbrains root causes of behavior jdk. more info see: idea-126257
intellij-idea intellij-14
No comments:
Post a Comment