currently I am working on a java project that uses the repast java library (repast.jar, colt.jar and trove.jar). The project works fine with jdk-11, but currently, I am trying to migrate to jdk-17 and I am not able to run the project because of the next exception:
Exception in thread "main" java.lang.IllegalAccessError: class com.go.trove.classfile.AccessFlags tried to access private method 'void java.lang.reflect.Modifier.<init>()' (com.go.trove.classfile.AccessFlags is in unnamed module of loader 'app'; java.lang.reflect.Modifier is in module java.base of loader 'bootstrap')
at com.go.trove.classfile.AccessFlags.<init>(AccessFlags.java:75)
at com.go.trove.classfile.ClassFile.<init>(ClassFile.java:160)
at com.go.trove.classfile.ClassFile.<init>(ClassFile.java:138)
at uchicago.src.sim.util.ByteCodeBuilder.generateBasicAction(Unknown Source)
at uchicago.src.sim.engine.ActionUtilities.createActionFor(Unknown Source)
at uchicago.src.sim.engine.ScheduleBase.scheduleActionBeginning(Unknown Source)
at uchicago.src.sim.engine.ScheduleBase.scheduleActionBeginning(Unknown Source)
I remember reading that in a recent version of java some changes on the reflection API occurred. Would this be a possible cause?
Any idea of how to solve it? Is that hard to solve?
Thanks so much!