When building (./gradlew clean build) Hibernate ORM on IBM JDK 8 thousands of tests fail with the same error:
java.lang.annotation.AnnotationFormatError: java.lang.IllegalArgumentException: Wrong type at constant pool index
at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:89)
at java.lang.reflect.AccessibleObject.getAnnotationsFromCache(AccessibleObject.java:313)
at java.lang.reflect.Executable.declaredAnnotations(Executable.java:606)
at java.lang.reflect.Executable.getAnnotation(Executable.java:581)
at java.lang.reflect.Method.getAnnotation(Method.java:643)
at org.hibernate.service.internal.AbstractServiceRegistryImpl.applyInjections(AbstractServiceRegistryImpl.java:293)
at org.hibernate.service.internal.AbstractServiceRegistryImpl.injectDependencies(AbstractServiceRegistryImpl.java:283)
at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:243)
at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:214)
at org.hibernate.boot.internal.SessionFactoryOptionsBuilder.interpretConnectionHandlingMode(SessionFactoryOptionsBuilder.java:599)
at org.hibernate.boot.internal.SessionFactoryOptionsBuilder.<init>(SessionFactoryOptionsBuilder.java:433)
at org.hibernate.boot.internal.SessionFactoryBuilderImpl.<init>(SessionFactoryBuilderImpl.java:53)
at org.hibernate.boot.internal.MetadataImpl.getSessionFactoryBuilder(MetadataImpl.java:153)
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:935)
at org.hibernate.jpa.test.BaseEntityManagerFunctionalTestCase.buildEntityManagerFactory(BaseEntityManagerFunctionalTestCase.java:77)
at sun.reflect.GeneratedMethodAccessor23.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:508)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:298)
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
at java.util.concurrent.FutureTask.run(FutureTask.java:277)
at java.lang.Thread.run(Thread.java:812)
Caused by: java.lang.IllegalArgumentException: Wrong type at constant pool index
at sun.reflect.ConstantPool.getClassAt0(Native Method)
at sun.reflect.ConstantPool.getClassAt(ConstantPool.java:49)
at sun.reflect.annotation.AnnotationParser.parseAnnotation2(AnnotationParser.java:256)
at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:132)
at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:84)
... 26 more
I'm not yet sure if it is only build/test issue or also runtime issue.