fork(1) download
  1. /* package whatever; // don't place package name! */
  2.  
  3.  
  4.  
  5. import java.util.function.Supplier;
  6. import java.util.stream.Collectors;
  7. import java.util.stream.Stream;
  8.  
  9. class Tmp {
  10. static <T> T readValue(Supplier<T> s, Class<T> type) throws Exception {
  11. return s.get();
  12. }
  13. interface Source extends Supplier<String>, AutoCloseable {
  14. public default void close() throws Exception {}
  15. }
  16.  
  17. public static void main(String[] args) {
  18. Stream.of("one", "two", "three")
  19. .map(s -> {
  20. try(Source source = () -> s) {
  21. return (readValue(source, String.class));
  22. }
  23. catch(Exception ex) {
  24. return null;
  25. }
  26. })
  27. .forEach(System.out::println);
  28. }
  29. }
  30.  
Runtime error #stdin #stdout #stderr 0.04s 4386816KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.VerifyError: Inconsistent stackmap frames at branch target 50
Exception Details:
  Location:
    Tmp.lambda$main$1(Ljava/lang/String;)Ljava/lang/String; @50: aload_3
  Reason:
    Type 'java/lang/Object' (current frame, locals[3]) is not assignable to 'java/lang/String' (stack map, locals[3])
  Current Frame:
    bci: @17
    flags: { }
    locals: { 'java/lang/String', 'Tmp$Source', null, 'java/lang/Object' }
    stack: { 'Tmp$Source' }
  Stackmap Frame:
    bci: @50
    flags: { }
    locals: { 'java/lang/String', 'Tmp$Source', 'java/lang/Throwable', 'java/lang/String' }
    stack: { }
  Bytecode:
    0x0000000: 2aba 000e 0000 4c01 4d2b 1203 b800 0f4e
    0x0000010: 2bc6 0021 2cc6 0017 2bb9 0010 0100 a700
    0x0000020: 143a 042c 1904 b600 12a7 0009 2bb9 0010
    0x0000030: 0100 2db0 4e2d 4d2d bf3a 052b c600 212c
    0x0000040: c600 172b b900 1001 00a7 0014 3a06 2c19
    0x0000050: 06b6 0012 a700 092b b900 1001 0019 05bf
    0x0000060: 4c01 b0                                
  Exception Handler Table:
    bci [24, 30] => handler: 33
    bci [9, 16] => handler: 52
    bci [9, 16] => handler: 57
    bci [67, 73] => handler: 76
    bci [52, 59] => handler: 57
    bci [0, 50] => handler: 96
    bci [52, 96] => handler: 96
  Stackmap Table:
    full_frame(@33,{Object[#39],Object[#40],Object[#41],Object[#39]},{Object[#41]})
    same_frame(@44)
    same_frame(@50)
    full_frame(@52,{Object[#39],Object[#40],Object[#41]},{Object[#41]})
    same_locals_1_stack_item_frame(@57,Object[#41])
    full_frame(@76,{Object[#39],Object[#40],Object[#41],Top,Top,Object[#41]},{Object[#41]})
    same_frame(@87)
    same_frame(@93)
    full_frame(@96,{Object[#39]},{Object[#42]})

	at java.lang.Class.getDeclaredMethods0(Native Method)
	at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
	at java.lang.Class.privateGetMethodRecursive(Class.java:3048)
	at java.lang.Class.getMethod0(Class.java:3018)
	at java.lang.Class.getMethod(Class.java:1784)
	at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544)
	at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526)