-
Notifications
You must be signed in to change notification settings - Fork 46
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
scala/math/Ordering not found after 2.5.0 update #202
Comments
Hi @edrevo, |
I recently ran into this myself when we went from scala From a bit of digging and chatting to the scala maintainers (scala/bug#12162) my belief this is because kafka core inlines scala library hidden class names for performance reasons: https://github.com/apache/kafka/blob/trunk/build.gradle#L520 In kafka they know this leads to ABI compatibility issues but they say:
It seems though EmbeddedKafka is using One way is locking the scala library dependency to I have no good idea on how to go on about fixing this as it seems kafka core intentionally is compiled to make minor versions upgrades possibly not work (for performance reasons) as it's not intended to be used a library. Shadowjar:ing the kafka dependency could maybe work but as it's the core scala library that needs to be shaded it makes it tricky. Anyway, just wanted to add a bit more context to this issue. PS. About scala inlining: https://www.lightbend.com/blog/scala-inliner-optimizer |
As Kafka core inlines the Scala library, you can not use a different Scala patch version than what Kafka used to compile its jars. Embedded Kafka for Kafka 2.6.0 requires users to be on Scala 2.12.11 or 2.13.2. |
Kafka 2.7.0 bumps Scala dependencies to 2.12.12 and 2.13.3 respectively. |
I am using embedded-kafka 2.4.1.1 and it works like a charm. I have tried to update the dependency to 2.5.0, 2.5.1 or 2.6.0 but I get this stacktrace with the newer versions:
I am using Scala 2.12.12
The text was updated successfully, but these errors were encountered: