You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Dávid Paksy (Jira)" <ji...@apache.org> on 2026/04/23 11:41:00 UTC
[jira] [Created] (ZOOKEEPER-5039) Upgrade Mockito to 5.23.0 for JDK25
Dávid Paksy created ZOOKEEPER-5039:
--------------------------------------
Summary: Upgrade Mockito to 5.23.0 for JDK25
Key: ZOOKEEPER-5039
URL: https://issues.apache.org/jira/browse/ZOOKEEPER-5039
Project: ZooKeeper
Issue Type: Task
Reporter: Dávid Paksy
With the current 4.9.0 Mockito version tests are failing when JDK25 is used
{noformat}
[ERROR] testACLDigestHashHiding_OnlyAdmin Time elapsed: 0.07 s <<< ERROR!org.mockito.exceptions.base.MockitoException:
Mockito cannot mock this class: class org.apache.zookeeper.server.ZKDatabase.
If you're not sure why you're getting this error, please open an issue on GitHub.
Java : 25JVM vendor name : Eclipse AdoptiumJVM vendor version : 25.0.2+10-LTSJVM name : OpenJDK 64-Bit Server VMJVM version : 25.0.2+10-LTSJVM info : mixed mode, sharingOS name : LinuxOS version : 6.17.0-22-generic
You are seeing this disclaimer because Mockito is configured to create inlined mocks.You can learn about inline mocks and their limitations under item #39 of the Mockito class javadoc.
Underlying exception : org.mockito.exceptions.base.MockitoException: Could not modify all classes [class org.apache.zookeeper.server.ZKDatabase, class java.lang.Object] at org.apache.zookeeper.server.FinalRequestProcessorTest.setUp(FinalRequestProcessorTest.java:67) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) at java.base/java.lang.reflect.Method.invoke(Method.java:565)
...
Caused by: org.mockito.exceptions.base.MockitoException: Could not modify all classes [class org.apache.zookeeper.server.ZKDatabase, class java.lang.Object] at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:168) at net.bytebuddy.TypeCache$WithInlineExpunction.findOrInsert(TypeCache.java:399) at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:190) at net.bytebuddy.TypeCache$WithInlineExpunction.findOrInsert(TypeCache.java:410) ... 68 moreCaused by: java.lang.IllegalStateException: Byte Buddy could not instrument all classes within the mock's type hierarchy
This problem should never occur for javac-compiled classes. This problem has been observed for classes that are: - Compiled by older versions of scalac - Classes that are part of the Android distribution at org.mockito.internal.creation.bytebuddy.InlineBytecodeGenerator.triggerRetransformation(InlineBytecodeGenerator.java:284) at org.mockito.internal.creation.bytebuddy.InlineBytecodeGenerator.mockClass(InlineBytecodeGenerator.java:217) at org.mockito.internal.creation.bytebuddy.TypeCachingBytecodeGenerator.lambda$mockClass$0(TypeCachingBytecodeGenerator.java:47) at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:168) at net.bytebuddy.TypeCache$WithInlineExpunction.findOrInsert(TypeCache.java:399) at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:190) at net.bytebuddy.TypeCache$WithInlineExpunction.findOrInsert(TypeCache.java:410) at org.mockito.internal.creation.bytebuddy.TypeCachingBytecodeGenerator.mockClass(TypeCachingBytecodeGenerator.java:40) at org.mockito.internal.creation.bytebuddy.InlineDelegateByteBuddyMockMaker.createMockType(InlineDelegateByteBuddyMockMaker.java:396) at org.mockito.internal.creation.bytebuddy.InlineDelegateByteBuddyMockMaker.doCreateMock(InlineDelegateByteBuddyMockMaker.java:355) at org.mockito.internal.creation.bytebuddy.InlineDelegateByteBuddyMockMaker.createMock(InlineDelegateByteBuddyMockMaker.java:334) at org.mockito.internal.creation.bytebuddy.InlineByteBuddyMockMaker.createMock(InlineByteBuddyMockMaker.java:56) at org.mockito.internal.util.MockUtil.createMock(MockUtil.java:99) at org.mockito.internal.MockitoCore.mock(MockitoCore.java:88) at org.mockito.Mockito.mock(Mockito.java:1998) at org.mockito.Mockito.mock(Mockito.java:1913) ... 68 moreCaused by: java.lang.IllegalArgumentException: Java 25 (69) is not supported by the current version of Byte Buddy which officially supports Java 19 (63) - update Byte Buddy or set net.bytebuddy.experimental as a VM property at net.bytebuddy.utility.OpenedClassReader.of(OpenedClassReader.java:96) at net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining.create(TypeWriter.java:4011) at net.bytebuddy.dynamic.scaffold.TypeWriter$Default.make(TypeWriter.java:2224) at net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$UsingTypeWriter.make(DynamicType.java:4050) at net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase.make(DynamicType.java:3734) at org.mockito.internal.creation.bytebuddy.InlineBytecodeGenerator.transform(InlineBytecodeGenerator.java:401) at java.instrument/java.lang.instrument.ClassFileTransformer.transform(ClassFileTransformer.java:257) at java.instrument/sun.instrument.TransformerManager.transform(TransformerManager.java:188) at java.instrument/sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:594) at java.instrument/sun.instrument.InstrumentationImpl.retransformClasses0(Native Method) at java.instrument/sun.instrument.InstrumentationImpl.retransformClasses(InstrumentationImpl.java:221) at org.mockito.internal.creation.bytebuddy.InlineBytecodeGenerator.triggerRetransformation(InlineBytecodeGenerator.java:280) ... 83 more
[ERROR] testACLDigestHashHiding_UserCanAll Time elapsed: 0.052 s <<< ERROR!
{noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)