public class TestInnerLocal { public static void testStaticMethod() { class Inner { final String x; public Inner(String var1) { this.x = var1;// 22 }// 23 } new Inner("test");// 25 new TestInnerLocal.Inner1Static("test");// 26 new TestInnerLocal.Inner1Static.Inner2Static("test");// 27 }// 28 public void testMethod() { class Inner { final String x; public Inner(String var2) { this.x = var2;// 34 }// 35 } new Inner("test");// 37 new TestInnerLocal.Inner1Static("test");// 38 new TestInnerLocal.Inner1("test");// 39 new TestInnerLocal.Inner1Static.Inner2Static("test");// 40 }// 41 static class Inner1Static { final String x; public Inner1Static(String var1) { this.x = var1;// 53 }// 54 public static class Inner2Static { final String x; public Inner2Static(String var1) { this.x = var1;// 59 }// 60 } } class Inner1 { final String x; public Inner1(String var2) { this.x = var2;// 46 }// 47 } } class 'TestInnerLocal$1Inner' { method ' (Ljava/lang/String;)V' { 6 6 9 7 } } class 'TestInnerLocal' { method 'testStaticMethod ()V' { 4 10 e 11 18 12 1e 13 } method 'testMethod ()V' { 5 24 f 25 1a 26 24 27 2a 28 } } class 'TestInnerLocal$2Inner' { method ' (LTestInnerLocal;Ljava/lang/String;)V' { b 20 e 21 } } class 'TestInnerLocal$Inner1Static' { method ' (Ljava/lang/String;)V' { 6 34 9 35 } } class 'TestInnerLocal$Inner1Static$Inner2Static' { method ' (Ljava/lang/String;)V' { 6 41 9 42 } } class 'TestInnerLocal$Inner1' { method ' (LTestInnerLocal;Ljava/lang/String;)V' { b 50 e 51 } } Lines mapping: 22 <-> 7 23 <-> 8 25 <-> 11 26 <-> 12 27 <-> 13 28 <-> 14 34 <-> 21 35 <-> 22 37 <-> 25 38 <-> 26 39 <-> 27 40 <-> 28 41 <-> 29 46 <-> 51 47 <-> 52 53 <-> 35 54 <-> 36 59 <-> 42 60 <-> 43 Not mapped: 21 33 45 52 58