diff --git a/extensions/kubernetes-client/deployment/src/main/java/io/quarkus/kubernetes/client/deployment/KubernetesClientProcessor.java b/extensions/kubernetes-client/deployment/src/main/java/io/quarkus/kubernetes/client/deployment/KubernetesClientProcessor.java index ee14d8968c9e3..703d9fb787979 100644 --- a/extensions/kubernetes-client/deployment/src/main/java/io/quarkus/kubernetes/client/deployment/KubernetesClientProcessor.java +++ b/extensions/kubernetes-client/deployment/src/main/java/io/quarkus/kubernetes/client/deployment/KubernetesClientProcessor.java @@ -43,6 +43,7 @@ import io.quarkus.deployment.builditem.CombinedIndexBuildItem; import io.quarkus.deployment.builditem.ExtensionSslNativeSupportBuildItem; import io.quarkus.deployment.builditem.FeatureBuildItem; +import io.quarkus.deployment.builditem.RemovedResourceBuildItem; import io.quarkus.deployment.builditem.nativeimage.ReflectiveClassBuildItem; import io.quarkus.deployment.builditem.nativeimage.ReflectiveHierarchyBuildItem; import io.quarkus.deployment.builditem.nativeimage.RuntimeReinitializedClassBuildItem; @@ -53,6 +54,7 @@ import io.quarkus.kubernetes.client.runtime.KubernetesClientProducer; import io.quarkus.kubernetes.client.runtime.KubernetesConfigProducer; import io.quarkus.kubernetes.spi.KubernetesRoleBindingBuildItem; +import io.quarkus.maven.dependency.ArtifactKey; public class KubernetesClientProcessor { @@ -88,6 +90,13 @@ public void nativeImageSupport(BuildProducer .produce(new RuntimeReinitializedClassBuildItem(io.fabric8.kubernetes.client.utils.Utils.class.getName())); } + @BuildStep + RemovedResourceBuildItem unregisterVertHttpClient() { + // Exclude VertxHttpClientFactory in favour of QuarkusHttpClientFactory + return new RemovedResourceBuildItem(ArtifactKey.fromString("io.fabric8:kubernetes-httpclient-vertx"), + Collections.singleton("META-INF/services/io.fabric8.kubernetes.client.http.HttpClient$Factory")); + } + @BuildStep public void process(ApplicationIndexBuildItem applicationIndex, CombinedIndexBuildItem combinedIndexBuildItem, KubernetesClientBuildConfig kubernetesClientConfig, diff --git a/extensions/kubernetes-client/runtime-internal/src/main/resources/META-INF/services/io.fabric8.kubernetes.client.http.HttpClient$Factory b/extensions/kubernetes-client/runtime-internal/src/main/resources/META-INF/services/io.fabric8.kubernetes.client.http.HttpClient$Factory new file mode 100644 index 0000000000000..9ea453154b742 --- /dev/null +++ b/extensions/kubernetes-client/runtime-internal/src/main/resources/META-INF/services/io.fabric8.kubernetes.client.http.HttpClient$Factory @@ -0,0 +1 @@ +io.quarkus.kubernetes.client.runtime.QuarkusHttpClientFactory \ No newline at end of file