-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
ClassNotFoundException for io.apicurio.registry.serde.avro.AvroKafkaDeserializer class in native version #18148
Comments
/cc @cescoffier, @galderz, @zakkak |
Does this happen with Mandrel 21.0.0.0-Final as well?
Quarkus 1.13.7.Final is not compatible with Mandrel/GraalVM 21.1.x
https://github.com/graalvm/mandrel/wiki
|
The issue is also reproducible with both Mandrel versions compatible with Quarkus 1.13: Mandrel 20.3.2.0-Final: ❯ ./bin/native-image --version
GraalVM Version 20.3.2.0-Final (Mandrel Distribution) (Java Version 11.0.11+9) Maven packaging: [INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildStep] Building native image from /home/rmarting/Workspaces/ws-streams/kafka-clients-quarkus-sample/target/kafka-clients-quarkus-sample-2.0.0-SNAPSHOT-native-image-source-jar/kafka-clients-quarkus-sample-2.0.0-SNAPSHOT-runner.jar
[INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildStep] Running Quarkus native-image plugin on GraalVM Version 20.3.2.0-Final (Mandrel Distribution) (Java Version 11.0.11+9) Mandrel 21.0.0.0-Final: ❯ ./bin/native-image --version
GraalVM Version 21.0.0.0-Final (Mandrel Distribution) (Java Version 11.0.10+9) Maven packaging: [INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildStep] Building native image from /home/rmarting/Workspaces/ws-streams/kafka-clients-quarkus-sample/target/kafka-clients-quarkus-sample-2.0.0-SNAPSHOT-native-image-source-jar/kafka-clients-quarkus-sample-2.0.0-SNAPSHOT-runner.jar
[INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildStep] Running Quarkus native-image plugin on GraalVM Version 21.0.0.0-Final (Mandrel Distribution) (Java Version 11.0.10+9) So it seems that it is not related directly with the Mandrel version itself. |
cc @Ladicek |
Thanks @Ladicek for your update. I tested it with Quarkus 2.0.0.Final and with the following Mandrel distributions: ❯ ./mandrel/bin/native-image --version
GraalVM Version 20.3.2.0-Final (Mandrel Distribution) (Java Version 11.0.11+9)
❯ ./mandrel/bin/native-image --version
native-image 21.1.0.0-Final (Mandrel Distribution) (Java Version 11.0.11+9) In both cases the application in native mode works successfully. To complete the migration I have to add the I have to test using the IMHO this bug could be closed because it is fixed for Quarkus 2 and Apicurio Registry 2. |
Thanks for confirmation! FYI, |
Describe the bug
An application using Apicurio Avro Serde classes to pub/sub messages from a Kafka cluster fails when it is compiled in native mode with a
ClassNotFoundException
of the classio.apicurio.registry.serde.avro.AvroKafkaDeserializer
.The same application compiled in jvm mode works successfully.
The stacktrace of the error is:
Application is developed with the following artifacts and versions:
Expected behavior
To run exactly as the jvm version of the application.
Actual behavior
Failing with ClassNotFoundException of some classes from Apicurio Avro Serde dependency.
To Reproduce
The application is avaible in the
upgrade-to-kafka-2.7-apicurio-2.0
branch of my git repo:https://github.com/rmarting/kafka-clients-quarkus-sample/tree/upgrade-to-kafka-2.7-apicurio-2.0
Steps to reproduce the behavior:
Configuration
Smallrye properties related with Apicurio Avro Serde classes:
Environment:
Output of
uname -a
orver
Output of
java -version
GraalVM version (if different from Java)
Quarkus version or git rev
Quarkus 1.13.7.Final
Build tool (ie. output of
mvnw --version
orgradlew --version
)Additional context
Avro and Apicurio dependencies:
The text was updated successfully, but these errors were encountered: