Skip to content

Commit 28fed6b

Browse files
authored
Merge pull request #50199 from geoand/#50145
Fix Kotlin reflection issue in native mode
2 parents 7cc40df + 1b70a9c commit 28fed6b

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

extensions/kotlin/deployment/src/main/java/io/quarkus/kotlin/deployment/KotlinProcessor.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import io.quarkus.deployment.builditem.nativeimage.ReflectiveClassBuildItem;
1414
import io.quarkus.deployment.builditem.nativeimage.ReflectiveClassFinalFieldsWritablePredicateBuildItem;
1515
import io.quarkus.deployment.builditem.nativeimage.ReflectiveHierarchyIgnoreWarningBuildItem;
16+
import io.quarkus.deployment.builditem.nativeimage.ServiceProviderBuildItem;
1617
import io.quarkus.jackson.spi.ClassPathJacksonModuleBuildItem;
1718

1819
public class KotlinProcessor {
@@ -52,6 +53,7 @@ ReflectiveClassFinalFieldsWritablePredicateBuildItem dataClassPredicate() {
5253
*/
5354
@BuildStep
5455
void registerKotlinReflection(final BuildProducer<ReflectiveClassBuildItem> reflectiveClass,
56+
BuildProducer<ServiceProviderBuildItem> serviceProvider,
5557
BuildProducer<NativeImageResourcePatternsBuildItem> nativeResourcePatterns,
5658
BuildProducer<ReflectiveHierarchyIgnoreWarningBuildItem> reflectiveHierarchyIgnoreWarning) {
5759

@@ -80,5 +82,9 @@ void registerKotlinReflection(final BuildProducer<ReflectiveClassBuildItem> refl
8082
new ReflectiveHierarchyIgnoreWarningBuildItem(DotName.createSimple("kotlinx.serialization.KSerializer")));
8183
reflectiveHierarchyIgnoreWarning.produce(new ReflectiveHierarchyIgnoreWarningBuildItem(
8284
DotName.createSimple("kotlinx.serialization.descriptors.SerialDescriptor")));
85+
86+
serviceProvider.produce(
87+
new ServiceProviderBuildItem("kotlin.reflect.jvm.internal.impl.km.internal.extensions.MetadataExtensions",
88+
"kotlin.reflect.jvm.internal.impl.km.jvm.internal.JvmMetadataExtensions"));
8389
}
8490
}

0 commit comments

Comments
 (0)