Skip to content

memcached operator sample fails to start with NoSuchMethodError #3

Description

@mswiderski

Tying out this sample operator on clean install it fails with following exception

 --/ __ \/ / / / _ | / _ \/ //_/ / / / __/
 -/ /_/ / /_/ / __ |/ , _/ ,< / /_/ /\ \
--\___\_\____/_/ |_/_/|_/_/|_|\____/___/
2021-02-28 11:11:52,613 INFO  [io.jav.qua.ext.dep.QuarkusExtensionProcessor] (build-33) Processed 'io.javaoperatorsdk.sample.memcached.MemcachedController' controller named 'memcachedcontroller' for 'memcacheds.cache.example.com' CR (version 'cache.example.com/v1alpha1')
2021-02-28 11:11:54,088 INFO  [io.quarkus] (Quarkus Main Thread) memcached-operator 0.1.0-SNAPSHOT on JVM (powered by Quarkus 1.12.0.Final) started in 0.306s. Listening on: http://localhost:8080
2021-02-28 11:11:54,089 INFO  [io.quarkus] (Quarkus Main Thread) Profile dev activated. Live Coding activated.
2021-02-28 11:11:54,089 INFO  [io.quarkus] (Quarkus Main Thread) Installed features: [cdi, kubernetes, kubernetes-client, operator-sdk, smallrye-health]
2021-02-28 11:11:54,341 ERROR [io.qua.run.boo.StartupActionImpl] (Quarkus Main Thread) Error running Quarkus: java.lang.reflect.InvocationTargetException
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:566)
	at io.quarkus.runner.bootstrap.StartupActionImpl$3.run(StartupActionImpl.java:134)
	at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.NoSuchMethodError: io.fabric8.kubernetes.client.V1ApiextensionAPIGroupDSL.customResourceDefinitions()Lio/fabric8/kubernetes/client/dsl/MixedOperation;
	at io.javaoperatorsdk.operator.Operator.register(Operator.java:106)
	at io.javaoperatorsdk.operator.Operator.register(Operator.java:63)
	at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
	at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
	at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:658)
	at io.javaoperatorsdk.quarkus.extension.OperatorProducer.operator(OperatorProducer.java:24)
	at io.javaoperatorsdk.quarkus.extension.OperatorProducer_ProducerMethod_operator_a8440c868181d0f10deca15fb7a236e1362600c2_Bean.create(OperatorProducer_ProducerMethod_operator_a8440c868181d0f10deca15fb7a236e1362600c2_Bean.zig:334)
	at io.javaoperatorsdk.quarkus.extension.OperatorProducer_ProducerMethod_operator_a8440c868181d0f10deca15fb7a236e1362600c2_Bean.create(OperatorProducer_ProducerMethod_operator_a8440c868181d0f10deca15fb7a236e1362600c2_Bean.zig:349)
	at io.quarkus.arc.impl.AbstractSharedContext.createInstanceHandle(AbstractSharedContext.java:96)
	at io.quarkus.arc.impl.AbstractSharedContext.access$000(AbstractSharedContext.java:14)
	at io.quarkus.arc.impl.AbstractSharedContext$1.get(AbstractSharedContext.java:29)
	at io.quarkus.arc.impl.AbstractSharedContext$1.get(AbstractSharedContext.java:26)
	at io.quarkus.arc.impl.LazyValue.get(LazyValue.java:26)
	at io.quarkus.arc.impl.ComputingCache.computeIfAbsent(ComputingCache.java:69)
	at io.quarkus.arc.impl.AbstractSharedContext.get(AbstractSharedContext.java:26)
	at io.javaoperatorsdk.quarkus.extension.OperatorProducer_ProducerMethod_operator_a8440c868181d0f10deca15fb7a236e1362600c2_Bean.get(OperatorProducer_ProducerMethod_operator_a8440c868181d0f10deca15fb7a236e1362600c2_Bean.zig:381)
	at io.javaoperatorsdk.quarkus.extension.OperatorProducer_ProducerMethod_operator_a8440c868181d0f10deca15fb7a236e1362600c2_Bean.get(OperatorProducer_ProducerMethod_operator_a8440c868181d0f10deca15fb7a236e1362600c2_Bean.zig:397)
	at io.javaoperatorsdk.sample.memcached.MemcachedOperator_Bean.create(MemcachedOperator_Bean.zig:202)
	at io.javaoperatorsdk.sample.memcached.MemcachedOperator_Bean.create(MemcachedOperator_Bean.zig:242)
	at io.quarkus.arc.impl.AbstractSharedContext.createInstanceHandle(AbstractSharedContext.java:96)
	at io.quarkus.arc.impl.AbstractSharedContext.access$000(AbstractSharedContext.java:14)
	at io.quarkus.arc.impl.AbstractSharedContext$1.get(AbstractSharedContext.java:29)
	at io.quarkus.arc.impl.AbstractSharedContext$1.get(AbstractSharedContext.java:26)
	at io.quarkus.arc.impl.LazyValue.get(LazyValue.java:26)
	at io.quarkus.arc.impl.ComputingCache.computeIfAbsent(ComputingCache.java:69)
	at io.quarkus.arc.impl.AbstractSharedContext.get(AbstractSharedContext.java:26)
	at io.quarkus.arc.impl.ClientProxies.getApplicationScopedDelegate(ClientProxies.java:17)
	at io.javaoperatorsdk.sample.memcached.MemcachedOperator_ClientProxy.arc$delegate(MemcachedOperator_ClientProxy.zig:67)
	at io.javaoperatorsdk.sample.memcached.MemcachedOperator_ClientProxy.run(MemcachedOperator_ClientProxy.zig:126)
	at io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:122)
	at io.quarkus.runtime.Quarkus.run(Quarkus.java:66)
	at io.quarkus.runtime.Quarkus.run(Quarkus.java:42)
	at io.javaoperatorsdk.sample.memcached.MemcachedOperator.main(MemcachedOperator.java:15)
	... 6 more

Looks like some sort of library conflict as the Kubernetes Client seems to be upgraded here compared to what quarkus provides with 1.12.0 version.

Any ideas how to resolve this?

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions