SHA65536 opened a new issue, #15595:
URL: https://github.com/apache/druid/issues/15595

   ### Affected Version
   Druid 26.0.0
   Java 17
   
   ### Description
   We were upgrading druid to use Java 17 instead of Java 8 and everything went 
alright except adding extensions.
   I need to add the kafka-emitter and prometheus-emitter extensions
   This is the command im using:
   ```
   java -classpath "/opt/druid/lib/*" 
-Ddruid.extensions.directory=/opt/druid/extensions org.apache.druid.cli.Main 
tools pull-deps --defaultVersion 26.0.0 -c 
org.apache.druid.extensions.contrib:kafka-emitter
   ```
   I tried adding these flags to it:
   ```
   --add-exports=java.base/jdk.internal.ref=ALL-UNNAMED 
--add-exports=java.base/jdk.internal.misc=ALL-UNNAMED 
--add-opens=java.base/java.lang=ALL-UNNAMED 
--add-opens=java.base/java.io=ALL-UNNAMED 
--add-opens=java.base/java.nio=ALL-UNNAMED 
--add-opens=java.base/jdk.internal.ref=ALL-UNNAMED 
--add-opens=java.base/sun.nio.ch=ALL-UNNAMED 
--add-opens=jdk.management/com.sun.management.internal=ALL-UNNAMED --add-opens 
java.management/sun.management=ALL-UNNAMED
   ```
   The error im getting is:
   ```
   Exception in thread "main" java.lang.ExceptionInInitializerError
        at 
com.google.inject.internal.cglib.reflect.$FastClass$Generator.getProtectionDomain(FastClass.java:73)
        at 
com.google.inject.internal.cglib.core.$AbstractClassGenerator.create(AbstractClassGenerator.java:206)
        at 
com.google.inject.internal.cglib.reflect.$FastClass$Generator.create(FastClass.java:65)
        at 
com.google.inject.internal.BytecodeGen.newFastClassForMember(BytecodeGen.java:252)
        at 
com.google.inject.internal.BytecodeGen.newFastClassForMember(BytecodeGen.java:203)
        at 
com.google.inject.internal.ProviderMethod.create(ProviderMethod.java:69)
        at 
com.google.inject.internal.ProviderMethodsModule.createProviderMethod(ProviderMethodsModule.java:275)
        at 
com.google.inject.internal.ProviderMethodsModule.getProviderMethods(ProviderMethodsModule.java:144)
        at 
com.google.inject.internal.ProviderMethodsModule.configure(ProviderMethodsModule.java:123)
        at 
com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:340)
        at 
com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:349)
        at com.google.inject.spi.Elements.getElements(Elements.java:110)
        at 
com.google.inject.internal.InjectorShell$Builder.build(InjectorShell.java:138)
        at 
com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:104)
        at com.google.inject.Guice.createInjector(Guice.java:99)
        at com.google.inject.Guice.createInjector(Guice.java:73)
        at 
org.apache.druid.guice.BaseInjectorBuilder.build(BaseInjectorBuilder.java:66)
        at org.apache.druid.cli.Main.main(Main.java:96)
   Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make 
protected final java.lang.Class 
java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain)
 throws java.lang.ClassFormatError accessible: module java.base does not "opens 
java.lang" to unnamed module @5a6d67c3
        at 
java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354)
        at 
java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
        at 
java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199)
        at java.base/java.lang.reflect.Method.setAccessible(Method.java:193)
        at 
com.google.inject.internal.cglib.core.$ReflectUtils$1.run(ReflectUtils.java:52)
        at 
java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
        at 
com.google.inject.internal.cglib.core.$ReflectUtils.<clinit>(ReflectUtils.java:42)
        ... 18 more
   
   ```
   Related to this issue: https://github.com/apache/druid/issues/15369
   Not sure which flags i'm supposed to add to mitigate this issue


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to