[
https://issues.apache.org/jira/browse/KAFKA-19664?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18023838#comment-18023838
]
Dejan Stojadinović commented on KAFKA-19664:
--------------------------------------------
Update: *Mockito* version needs to be upgraded to resolve build issues (see the
output of *_./gradlew test_* below).
*Related links:*
* https://issues.apache.org/jira/browse/SOLR-17718
* [https://github.com/mockito/mockito/releases/tag/v5.20.0]
{code:java}
GroupCoordinatorShardTest > testReplayStreamsGroupTargetAssignmentMember()
FAILED
org.mockito.exceptions.base.MockitoException:
Mockito cannot mock this class: class
org.apache.kafka.coordinator.group.GroupMetadataManager.
If you're not sure why you're getting this error, please open an issue on
GitHub.
Java : 25
JVM vendor name : Eclipse Adoptium
JVM vendor version : 25+36-LTS
JVM name : OpenJDK 64-Bit Server VM
JVM version : 25+36-LTS
JVM info : mixed mode, sharing
OS name : Linux
OS version : 6.8.0-84-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 java.lang.Object, class
org.apache.kafka.coordinator.group.GroupMetadataManager]
at
app//org.apache.kafka.coordinator.group.GroupCoordinatorShardTest.testReplayStreamsGroupTargetAssignmentMember(GroupCoordinatorShardTest.java:1117)
Caused by:
org.mockito.exceptions.base.MockitoException: Could not modify all
classes [class java.lang.Object, class
org.apache.kafka.coordinator.group.GroupMetadataManager]
at app//net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:168)
at
app//net.bytebuddy.TypeCache$WithInlineExpunction.findOrInsert(TypeCache.java:399)
at app//net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:190)
at
app//net.bytebuddy.TypeCache$WithInlineExpunction.findOrInsert(TypeCache.java:410)
... 1 more
Caused 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:285)
at
org.mockito.internal.creation.bytebuddy.InlineBytecodeGenerator.mockClass(InlineBytecodeGenerator.java:218)
at
org.mockito.internal.creation.bytebuddy.TypeCachingBytecodeGenerator.lambda$mockClass$0(TypeCachingBytecodeGenerator.java:78)
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:75)
at
org.mockito.internal.creation.bytebuddy.InlineDelegateByteBuddyMockMaker.createMockType(InlineDelegateByteBuddyMockMaker.java:408)
at
org.mockito.internal.creation.bytebuddy.InlineDelegateByteBuddyMockMaker.doCreateMock(InlineDelegateByteBuddyMockMaker.java:367)
at
org.mockito.internal.creation.bytebuddy.InlineDelegateByteBuddyMockMaker.createMock(InlineDelegateByteBuddyMockMaker.java:346)
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:84)
at org.mockito.Mockito.mock(Mockito.java:2162)
at org.mockito.Mockito.mock(Mockito.java:2077)
... 1 more
Caused by:
java.lang.IllegalArgumentException: Java 25 (69) is not
supported by the current version of Byte Buddy which officially supports Java
24 (68) - update Byte Buddy or set net.bytebuddy.experimental as a VM property
at
net.bytebuddy.utility.OpenedClassReader.of(OpenedClassReader.java:120)
at
net.bytebuddy.utility.OpenedClassReader.of(OpenedClassReader.java:95)
at
net.bytebuddy.utility.AsmClassReader$Factory$Default.make(AsmClassReader.java:82)
at
net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining.create(TypeWriter.java:4036)
at
net.bytebuddy.dynamic.scaffold.TypeWriter$Default.make(TypeWriter.java:2246)
at
net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$UsingTypeWriter.make(DynamicType.java:4057)
at
net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase.make(DynamicType.java:3741)
at
org.mockito.internal.creation.bytebuddy.InlineBytecodeGenerator.transform(InlineBytecodeGenerator.java:402)
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:281)
... 16 more
org.apache.kafka.coordinator.group.GroupCoordinatorServiceTest.testFetchOffsetsWithWrappedError(boolean,
Errors, Errors)[2] failed, log available in
/home/dejan/kafka/group-coordinator/build/reports/testOutput/org.apache.kafka.coordinator.group.GroupCoordinatorServiceTest.testFetchOffsetsWithWrappedError(boolean,
Errors, Errors)[2].test.stdout
{code}
> Support building with Java 25 (LTS release)
> -------------------------------------------
>
> Key: KAFKA-19664
> URL: https://issues.apache.org/jira/browse/KAFKA-19664
> Project: Kafka
> Issue Type: Improvement
> Components: build
> Reporter: Dejan Stojadinović
> Assignee: Dejan Stojadinović
> Priority: Major
> Labels: CI, CI/CD, Gradle, Java, Java25, Scala, build,
> github-actions, gradle, java, scala, update, upgrade
>
> *Depends upon/blocked by:*
> * Kafka ticket: KAFKA-19174 Gradle version upgrade 8 -->> 9 (review is under
> way)
> * Spotbugs next version:
> ** [https://github.com/spotbugs/spotbugs/issues/3564]
> ** [https://github.com/spotbugs/spotbugs/issues/3569]
> ** https://issues.apache.org/jira/browse/BCEL-377
> ** [https://github.com/spotbugs/spotbugs/pull/3712]
> ** [https://github.com/spotbugs/spotbugs/discussions/3380]
> *Related links:*
> * JDK 25 release date: September 16th 2025:
> ** [https://mail.openjdk.org/pipermail/announce/2025-September/000360.html]
> ** [https://openjdk.org/projects/jdk/25]
> * Gradle 9.1 will support Java 25:
> [https://docs.gradle.org/9.1.0/release-notes.html#support-for-java-25]
> * Scala 2.13.17 is also announced:
> **
> [https://docs.scala-lang.org/overviews/jdk-compatibility/overview.html#jdk-25-compatibility-notes]
> **
> [https://contributors.scala-lang.org/t/scala-2-13-17-release-planning/6994/10]
> ** [https://github.com/scala/scala/milestone/109]
> * other related links:
> ** [https://github.com/adoptium/temurin/issues/96]
> ** [https://launchpad.net/ubuntu/+source/openjdk-25]
> ** [https://github.com/actions/setup-java/issues/899]
> *Related Github PR:* [https://github.com/apache/kafka/pull/20295] _*MINOR:
> Run CI with Java 24*_
> FYI [~ijuma] [~chia7712]
--
This message was sent by Atlassian Jira
(v8.20.10#820010)