Netflix / archaius

Library for configuration management API
Apache License 2.0
2.46k stars 485 forks source link

Dynamic creation of lambdas for ConfigProxyFactory fails on java 9, 11, maybe others. #682

Closed rgallardo-netflix closed 11 months ago

rgallardo-netflix commented 11 months ago

When trying to create config proxies for interfaces with default methods, if running on java 9 or 11 the dynamic creation of lambda thunks fails with

1) [Guice/ErrorInCustomProvider]: VerifyError: Bad invokespecial instruction: interface method reference is in an indirect superinterface.
Exception Details:
  Location:
    com/netflix/archaius/ConfigProxyFactory$$Lambda$1206.apply(Ljava/lang/Object;)Ljava/lang/Object; @4: invokespecial
  Reason:
    Error exists in the bytecode
  Bytecode:
    0000000: 2bc0 000f b700 13b8 0019 b0            

  at SubscriberserviceClientModule.getConfig(SubscriberserviceClientModule.java:47)