Open
Description
Describe the bug
Per the Quarkus JMS documentation here: https://quarkus.io/guides/jms
It seems I should be able to setup the example under the "Qpid JMS - AMQP", then just swap the dependency and configs to artemis and all should be well.
But when I do that, I get Unsatisfied dependency for type jakarta.jms.ConnectionFactory.
Is something missing from the documentation? Or is something broken in this extension?
I wrote an issue on the Artemis JMS extension as well: quarkiverse/quarkus-artemis#812
Expected behavior
Successful build
Actual behavior
[error]: Build step io.quarkus.arc.deployment.ArcProcessor#validate threw an exception: jakarta.enterprise.inject.spi.DeploymentException: jakarta.enterprise.inject.UnsatisfiedResolutionException: Unsatisfied dependency for type jakarta.jms.ConnectionFactory and qualifiers [@Default]
- injection target: my.project.rest.MyDataResource#connectionFactory
- declared on CLASS bean [types=[my.project.rest.MyDataResource, java.lang.Object], qualifiers=[@Default, @Any], target=my.project.rest.MyDataResource]
at io.quarkus.arc.processor.BeanDeployment.processErrors(BeanDeployment.java:1581)
at io.quarkus.arc.processor.BeanDeployment.init(BeanDeployment.java:338)
at io.quarkus.arc.processor.BeanProcessor.initialize(BeanProcessor.java:178)
at io.quarkus.arc.deployment.ArcProcessor.validate(ArcProcessor.java:488)
at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:733)
at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:856)
at io.quarkus.builder.BuildContext.run(BuildContext.java:255)
at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2675)
at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2654)
at org.jboss.threads.EnhancedQueueExecutor.runThreadBody(EnhancedQueueExecutor.java:1627)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1594)
at java.base/java.lang.Thread.run(Thread.java:1583)
at org.jboss.threads.JBossThread.run(JBossThread.java:499)
Caused by: jakarta.enterprise.inject.UnsatisfiedResolutionException: Unsatisfied dependency for type jakarta.jms.ConnectionFactory and qualifiers [@Default]
- injection target: my.project.rest.MyDataResource#connectionFactory
- declared on CLASS bean [types=[my.project.rest.MyDataResource, java.lang.Object], qualifiers=[@Default, @Any], target=my.project.rest.MyDataResource]
at io.quarkus.arc.processor.Beans.resolveInjectionPoint(Beans.java:547)
at io.quarkus.arc.processor.BeanInfo.init(BeanInfo.java:689)
at io.quarkus.arc.processor.BeanDeployment.init(BeanDeployment.java:323)
... 12 more
How to Reproduce?
- Clone https://github.com/mikethecalamity/quarkus-service
- Checkout branch: artemis
- Run: gradlew data-manager:quarkusBuild
If you uncomment the qpid dependency and comment the artemis dependency in data-manager/build.gradle
, it will succeed.
Output of uname -a
or ver
No response
Output of java -version
Eclipse Temurin JDK 21
Quarkus version or git rev
Quarkus 3.22.3 / Quarkus Artemis JMS 3.8.0
Build tool (ie. output of mvnw --version
or gradlew --version
)
Gradle 8.12.1
Additional information
No response