spring-loaded
spring-loaded copied to clipboard
Using lambdas throws NoSuchMethodError
If you start https://github.com/Artur-/spring-boot-loaded-vaadin using mvn install spring-boot:run
, open http://localhost:8080/ and then change the listener in MyUI.java from an anonymous inner class to a lambda, a refresh of the page will throw
java.lang.NoSuchMethodError: org.vaadin.artur.MyUI.lambda$0(Lcom/vaadin/ui/VerticalLayout;Lcom/vaadin/ui/Button$ClickEvent;)V
at java.lang.invoke.MethodHandleNatives.resolve(Native Method)
at java.lang.invoke.MemberName$Factory.resolve(MemberName.java:965)
at java.lang.invoke.MemberName$Factory.resolveOrFail(MemberName.java:990)
at java.lang.invoke.MethodHandles$Lookup.resolveOrFail(MethodHandles.java:1385)
at java.lang.invoke.MethodHandles$Lookup.linkMethodHandleConstant(MethodHandles.java:1726)
at java.lang.invoke.MethodHandleNatives.linkMethodHandleConstant(MethodHandleNatives.java:442)
at org.vaadin.artur.MyUI$$EPNFkP0a.init(MyUI.java:22)
at org.vaadin.artur.MyUI$$DPNFkP0a.init(Unknown Source)
at org.vaadin.artur.MyUI.init(MyUI.java)
The same happens if you start without a listener. Dynamically adding an anonymous inner class listener works fine.