Hello,
I'm trying to migrate a service from Quarkus 1.13.3 to Quarkus 2.0.2 but the build process ends with a NoSuchMethodError:
[ERROR] Failed to execute goal io.quarkus:quarkus-maven-plugin:2.0.2.Final:build (default) on project datasafe-big-file-transfer: Failed to build quarkus application: io.quarkus.builder.BuildException: Build failure: Build failed due to errors
[ERROR] [error]: Build step io.quarkus.kubernetes.deployment.KubernetesProcessor#build threw an exception: java.lang.NoSuchMethodError: 'io.fabric8.kubernetes.api.model.PersistentVolumeClaimVolumeSourceFluent io.fabric8.kubernetes.api.model.VolumeFluent$PersistentVolumeClaimNested.withNewReadOnly(boolean)'
[ERROR] at io.dekorate.kubernetes.decorator.AddPvcVolumeDecorator.visit(AddPvcVolumeDecorator.java:37)
[ERROR] at io.dekorate.kubernetes.decorator.AddPvcVolumeDecorator.visit(AddPvcVolumeDecorator.java:22)
[ERROR] at io.fabric8.kubernetes.api.builder.BaseFluent.acceptInternal(BaseFluent.java:106)
[ERROR] at io.fabric8.kubernetes.api.builder.BaseFluent.accept(BaseFluent.java:83)
[ERROR] at io.fabric8.kubernetes.api.builder.BaseFluent.accept(BaseFluent.java:14)
[ERROR] at io.fabric8.kubernetes.api.builder.BaseFluent.acceptInternal(BaseFluent.java:102)
[ERROR] at io.fabric8.kubernetes.api.builder.BaseFluent.accept(BaseFluent.java:83)
[ERROR] at io.fabric8.kubernetes.api.builder.BaseFluent.accept(BaseFluent.java:14)
[ERROR] at io.fabric8.kubernetes.api.builder.BaseFluent.acceptInternal(BaseFluent.java:102)
[ERROR] at io.fabric8.kubernetes.api.builder.BaseFluent.accept(BaseFluent.java:83)
[ERROR] at io.fabric8.kubernetes.api.builder.BaseFluent.accept(BaseFluent.java:14)
[ERROR] at io.fabric8.kubernetes.api.builder.BaseFluent.acceptInternal(BaseFluent.java:102)
[ERROR] at io.fabric8.kubernetes.api.builder.BaseFluent.accept(BaseFluent.java:83)
[ERROR] at io.fabric8.kubernetes.api.builder.BaseFluent.accept(BaseFluent.java:14)
[ERROR] at io.fabric8.kubernetes.api.builder.BaseFluent.acceptInternal(BaseFluent.java:102)
[ERROR] at io.fabric8.kubernetes.api.builder.BaseFluent.accept(BaseFluent.java:83)
[ERROR] at io.dekorate.ResourceRegistry.lambda$generate$3(ResourceRegistry.java:178)
[ERROR] at java.base/java.util.HashMap.forEach(HashMap.java:1336)
[ERROR] at io.dekorate.ResourceRegistry.generate(ResourceRegistry.java:172)
[ERROR] at io.dekorate.Session.generate(Session.java:285)
[ERROR] at io.dekorate.Session.close(Session.java:248)
[ERROR] at io.quarkus.kubernetes.deployment.KubernetesProcessor.lambda$build$4(KubernetesProcessor.java:162)
[ERROR] at java.base/java.util.Optional.ifPresent(Optional.java:183)
[ERROR] at io.quarkus.kubernetes.deployment.KubernetesProcessor.build(KubernetesProcessor.java:120)
[ERROR] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[ERROR] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[ERROR] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[ERROR] at java.base/java.lang.reflect.Method.invoke(Method.java:566)
[ERROR] at io.quarkus.deployment.ExtensionLoader$2.execute(ExtensionLoader.java:820)
[ERROR] at io.quarkus.builder.BuildContext.run(BuildContext.java:277)
[ERROR] at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
[ERROR] at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2442)
[ERROR] at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1476)
[ERROR] at java.base/java.lang.Thread.run(Thread.java:829)
[ERROR] at org.jboss.threads.JBossThread.run(JBossThread.java:501)
My application.yml looks like this:
quarkus:
http:
non-application-root-path: /big-file-transfer/q
resteasy:
path: /big-file-transfer/api/v1
smallrye-openapi:
path: openapi
swagger-ui:
path: swagger-ui
always-include: true
smallrye-health:
root-path: health
ui:
always-include: true
log:
level: INFO
kubernetes-config:
enabled: true
fail-on-missing-config: true
secrets:
~: bft-secret
enabled: true
container-image:
build: true
push: true
group: wwuulb
name: datasafe-big-file-transfer
registry: ulb.wwu.io
kubernetes:
part-of: datasafe
name: big-file-transfer-service
version: 2.0.0
image-pull-secrets: ulbreg
env:
vars:
quarkus-profile: development
resources:
limits:
cpu: 2
memory: 4Gi
requests:
cpu: 2
memory: 4Gi
mounts:
jwt-key-volume:
path: /tls
read-only: true
rdm-bagit:
path: /downloads
read-only: false
secret-volumes:
jwt-key-volume:
secret-name: rdm-tls
read-only: true
pvc-volumes:
rdm-bagit:
claim-name: wwu-rdm-pvc
read-only: false
I'm sorry, the editor removed the formatting :(
Best regards
Werner