I have a very simple proof of concept around the Quarkus JNoSQL extension that uses Gradle and Java 21.
I'm experiencing a failure when trying to run the Quarkus tests:
Show/Hide Stacktrace
```shell
java.lang.RuntimeException: java.lang.RuntimeException: io.quarkus.builder.BuildException: Build failure: Build failed due to errors
[error]: Build step io.quarkus.arc.deployment.ArcProcessor#validate threw an exception: jakarta.enterprise.inject.spi.DeploymentException: Found 2 deployment problems:
[1] Unsatisfied dependency for type org.eclipse.jnosql.mapping.metadata.GroupEntityMetadata and qualifiers [@Default]
- injection target: org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata#extension
- declared on CLASS bean [types=[org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata, org.eclipse.jnosql.mapping.metadata.EntitiesMetadata, java.lang.Object], qualifiers=[@Default, @Any], target=org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata]
[2] Unsatisfied dependency for type org.eclipse.jnosql.communication.semistructured.DatabaseConfiguration and qualifiers [@Default]
- injection target: io.quarkiverse.jnosql.core.runtime.AbstractManagerProducer#configuration
- declared on CLASS bean [types=[io.quarkiverse.jnosql.document.runtime.DocumentManagerProducer, java.util.function.Supplier, java.lang.Object, io.quarkiverse.jnosql.core.runtime.AbstractManagerProducer, java.util.function.Function], qualifiers=[@Default, @Any], target=io.quarkiverse.jnosql.document.runtime.DocumentManagerProducer]
at io.quarkus.arc.processor.BeanDeployment.processErrors(BeanDeployment.java:1559)
at io.quarkus.arc.processor.BeanDeployment.init(BeanDeployment.java:338)
at io.quarkus.arc.processor.BeanProcessor.initialize(BeanProcessor.java:167)
at io.quarkus.arc.deployment.ArcProcessor.validate(ArcProcessor.java:490)
at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:733)
at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:854)
at io.quarkus.builder.BuildContext.run(BuildContext.java:256)
at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2516)
at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2495)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1521)
at java.base/java.lang.Thread.run(Thread.java:1583)
at org.jboss.threads.JBossThread.run(JBossThread.java:483)
Suppressed: jakarta.enterprise.inject.UnsatisfiedResolutionException: Unsatisfied dependency for type org.eclipse.jnosql.mapping.metadata.GroupEntityMetadata and qualifiers [@Default]
- injection target: org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata#extension
- declared on CLASS bean [types=[org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata, org.eclipse.jnosql.mapping.metadata.EntitiesMetadata, java.lang.Object], qualifiers=[@Default, @Any], target=org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata]
at io.quarkus.arc.processor.Beans.resolveInjectionPoint(Beans.java:545)
at io.quarkus.arc.processor.BeanInfo.init(BeanInfo.java:667)
at io.quarkus.arc.processor.BeanDeployment.init(BeanDeployment.java:323)
... 11 more
Suppressed: jakarta.enterprise.inject.UnsatisfiedResolutionException: Unsatisfied dependency for type org.eclipse.jnosql.communication.semistructured.DatabaseConfiguration and qualifiers [@Default]
- injection target: io.quarkiverse.jnosql.core.runtime.AbstractManagerProducer#configuration
- declared on CLASS bean [types=[io.quarkiverse.jnosql.document.runtime.DocumentManagerProducer, java.util.function.Supplier, java.lang.Object, io.quarkiverse.jnosql.core.runtime.AbstractManagerProducer, java.util.function.Function], qualifiers=[@Default, @Any], target=io.quarkiverse.jnosql.document.runtime.DocumentManagerProducer]
at io.quarkus.arc.processor.Beans.resolveInjectionPoint(Beans.java:545)
at io.quarkus.arc.processor.BeanInfo.init(BeanInfo.java:667)
at io.quarkus.arc.processor.BeanDeployment.init(BeanDeployment.java:323)
... 11 more
at io.quarkus.test.junit.QuarkusTestExtension.throwBootFailureException(QuarkusTestExtension.java:643)
at io.quarkus.test.junit.QuarkusTestExtension.interceptTestClassConstructor(QuarkusTestExtension.java:727)
at java.base/java.util.Optional.orElseGet(Optional.java:364)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
Caused by:
java.lang.RuntimeException: io.quarkus.builder.BuildException: Build failure: Build failed due to errors
[error]: Build step io.quarkus.arc.deployment.ArcProcessor#validate threw an exception: jakarta.enterprise.inject.spi.DeploymentException: Found 2 deployment problems:
[1] Unsatisfied dependency for type org.eclipse.jnosql.mapping.metadata.GroupEntityMetadata and qualifiers [@Default]
- injection target: org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata#extension
- declared on CLASS bean [types=[org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata, org.eclipse.jnosql.mapping.metadata.EntitiesMetadata, java.lang.Object], qualifiers=[@Default, @Any], target=org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata]
[2] Unsatisfied dependency for type org.eclipse.jnosql.communication.semistructured.DatabaseConfiguration and qualifiers [@Default]
- injection target: io.quarkiverse.jnosql.core.runtime.AbstractManagerProducer#configuration
- declared on CLASS bean [types=[io.quarkiverse.jnosql.document.runtime.DocumentManagerProducer, java.util.function.Supplier, java.lang.Object, io.quarkiverse.jnosql.core.runtime.AbstractManagerProducer, java.util.function.Function], qualifiers=[@Default, @Any], target=io.quarkiverse.jnosql.document.runtime.DocumentManagerProducer]
at io.quarkus.arc.processor.BeanDeployment.processErrors(BeanDeployment.java:1559)
at io.quarkus.arc.processor.BeanDeployment.init(BeanDeployment.java:338)
at io.quarkus.arc.processor.BeanProcessor.initialize(BeanProcessor.java:167)
at io.quarkus.arc.deployment.ArcProcessor.validate(ArcProcessor.java:490)
at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:733)
at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:854)
at io.quarkus.builder.BuildContext.run(BuildContext.java:256)
at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2516)
at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2495)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1521)
at java.base/java.lang.Thread.run(Thread.java:1583)
at org.jboss.threads.JBossThread.run(JBossThread.java:483)
Suppressed: jakarta.enterprise.inject.UnsatisfiedResolutionException: Unsatisfied dependency for type org.eclipse.jnosql.mapping.metadata.GroupEntityMetadata and qualifiers [@Default]
- injection target: org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata#extension
- declared on CLASS bean [types=[org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata, org.eclipse.jnosql.mapping.metadata.EntitiesMetadata, java.lang.Object], qualifiers=[@Default, @Any], target=org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata]
at io.quarkus.arc.processor.Beans.resolveInjectionPoint(Beans.java:545)
at io.quarkus.arc.processor.BeanInfo.init(BeanInfo.java:667)
at io.quarkus.arc.processor.BeanDeployment.init(BeanDeployment.java:323)
... 11 more
Suppressed: jakarta.enterprise.inject.UnsatisfiedResolutionException: Unsatisfied dependency for type org.eclipse.jnosql.communication.semistructured.DatabaseConfiguration and qualifiers [@Default]
- injection target: io.quarkiverse.jnosql.core.runtime.AbstractManagerProducer#configuration
- declared on CLASS bean [types=[io.quarkiverse.jnosql.document.runtime.DocumentManagerProducer, java.util.function.Supplier, java.lang.Object, io.quarkiverse.jnosql.core.runtime.AbstractManagerProducer, java.util.function.Function], qualifiers=[@Default, @Any], target=io.quarkiverse.jnosql.document.runtime.DocumentManagerProducer]
at io.quarkus.arc.processor.Beans.resolveInjectionPoint(Beans.java:545)
at io.quarkus.arc.processor.BeanInfo.init(BeanInfo.java:667)
at io.quarkus.arc.processor.BeanDeployment.init(BeanDeployment.java:323)
... 11 more
at io.quarkus.runner.bootstrap.AugmentActionImpl.runAugment(AugmentActionImpl.java:335)
at io.quarkus.runner.bootstrap.AugmentActionImpl.createInitialRuntimeApplication(AugmentActionImpl.java:254)
at io.quarkus.runner.bootstrap.AugmentActionImpl.createInitialRuntimeApplication(AugmentActionImpl.java:58)
at io.quarkus.test.junit.QuarkusTestExtension.doJavaStart(QuarkusTestExtension.java:219)
at io.quarkus.test.junit.QuarkusTestExtension.ensureStarted(QuarkusTestExtension.java:610)
at io.quarkus.test.junit.QuarkusTestExtension.beforeAll(QuarkusTestExtension.java:660)
... 1 more
Caused by:
io.quarkus.builder.BuildException: Build failure: Build failed due to errors
[error]: Build step io.quarkus.arc.deployment.ArcProcessor#validate threw an exception: jakarta.enterprise.inject.spi.DeploymentException: Found 2 deployment problems:
[1] Unsatisfied dependency for type org.eclipse.jnosql.mapping.metadata.GroupEntityMetadata and qualifiers [@Default]
- injection target: org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata#extension
- declared on CLASS bean [types=[org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata, org.eclipse.jnosql.mapping.metadata.EntitiesMetadata, java.lang.Object], qualifiers=[@Default, @Any], target=org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata]
[2] Unsatisfied dependency for type org.eclipse.jnosql.communication.semistructured.DatabaseConfiguration and qualifiers [@Default]
- injection target: io.quarkiverse.jnosql.core.runtime.AbstractManagerProducer#configuration
- declared on CLASS bean [types=[io.quarkiverse.jnosql.document.runtime.DocumentManagerProducer, java.util.function.Supplier, java.lang.Object, io.quarkiverse.jnosql.core.runtime.AbstractManagerProducer, java.util.function.Function], qualifiers=[@Default, @Any], target=io.quarkiverse.jnosql.document.runtime.DocumentManagerProducer]
at io.quarkus.arc.processor.BeanDeployment.processErrors(BeanDeployment.java:1559)
at io.quarkus.arc.processor.BeanDeployment.init(BeanDeployment.java:338)
at io.quarkus.arc.processor.BeanProcessor.initialize(BeanProcessor.java:167)
at io.quarkus.arc.deployment.ArcProcessor.validate(ArcProcessor.java:490)
at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:733)
at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:854)
at io.quarkus.builder.BuildContext.run(BuildContext.java:256)
at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2516)
at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2495)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1521)
at java.base/java.lang.Thread.run(Thread.java:1583)
at org.jboss.threads.JBossThread.run(JBossThread.java:483)
Suppressed: jakarta.enterprise.inject.UnsatisfiedResolutionException: Unsatisfied dependency for type org.eclipse.jnosql.mapping.metadata.GroupEntityMetadata and qualifiers [@Default]
- injection target: org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata#extension
- declared on CLASS bean [types=[org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata, org.eclipse.jnosql.mapping.metadata.EntitiesMetadata, java.lang.Object], qualifiers=[@Default, @Any], target=org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata]
at io.quarkus.arc.processor.Beans.resolveInjectionPoint(Beans.java:545)
at io.quarkus.arc.processor.BeanInfo.init(BeanInfo.java:667)
at io.quarkus.arc.processor.BeanDeployment.init(BeanDeployment.java:323)
... 11 more
Suppressed: jakarta.enterprise.inject.UnsatisfiedResolutionException: Unsatisfied dependency for type org.eclipse.jnosql.communication.semistructured.DatabaseConfiguration and qualifiers [@Default]
- injection target: io.quarkiverse.jnosql.core.runtime.AbstractManagerProducer#configuration
- declared on CLASS bean [types=[io.quarkiverse.jnosql.document.runtime.DocumentManagerProducer, java.util.function.Supplier, java.lang.Object, io.quarkiverse.jnosql.core.runtime.AbstractManagerProducer, java.util.function.Function], qualifiers=[@Default, @Any], target=io.quarkiverse.jnosql.document.runtime.DocumentManagerProducer]
at io.quarkus.arc.processor.Beans.resolveInjectionPoint(Beans.java:545)
at io.quarkus.arc.processor.BeanInfo.init(BeanInfo.java:667)
at io.quarkus.arc.processor.BeanDeployment.init(BeanDeployment.java:323)
... 11 more
at io.quarkus.builder.Execution.run(Execution.java:123)
at io.quarkus.builder.BuildExecutionBuilder.execute(BuildExecutionBuilder.java:79)
at io.quarkus.deployment.QuarkusAugmentor.run(QuarkusAugmentor.java:159)
at io.quarkus.runner.bootstrap.AugmentActionImpl.runAugment(AugmentActionImpl.java:331)
... 6 more
Caused by:
jakarta.enterprise.inject.spi.DeploymentException: Found 2 deployment problems:
[1] Unsatisfied dependency for type org.eclipse.jnosql.mapping.metadata.GroupEntityMetadata and qualifiers [@Default]
- injection target: org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata#extension
- declared on CLASS bean [types=[org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata, org.eclipse.jnosql.mapping.metadata.EntitiesMetadata, java.lang.Object], qualifiers=[@Default, @Any], target=org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata]
[2] Unsatisfied dependency for type org.eclipse.jnosql.communication.semistructured.DatabaseConfiguration and qualifiers [@Default]
- injection target: io.quarkiverse.jnosql.core.runtime.AbstractManagerProducer#configuration
- declared on CLASS bean [types=[io.quarkiverse.jnosql.document.runtime.DocumentManagerProducer, java.util.function.Supplier, java.lang.Object, io.quarkiverse.jnosql.core.runtime.AbstractManagerProducer, java.util.function.Function], qualifiers=[@Default, @Any], target=io.quarkiverse.jnosql.document.runtime.DocumentManagerProducer]
at io.quarkus.arc.processor.BeanDeployment.processErrors(BeanDeployment.java:1559)
at io.quarkus.arc.processor.BeanDeployment.init(BeanDeployment.java:338)
at io.quarkus.arc.processor.BeanProcessor.initialize(BeanProcessor.java:167)
at io.quarkus.arc.deployment.ArcProcessor.validate(ArcProcessor.java:490)
at java.base@21.0.4/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:733)
at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:854)
at io.quarkus.builder.BuildContext.run(BuildContext.java:256)
at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2516)
at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2495)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1521)
at java.base@21.0.4/java.lang.Thread.run(Thread.java:1583)
at org.jboss.threads.JBossThread.run(JBossThread.java:483)
```
It's not clear if this is a problem with the extension in question, but this is the starting point :grimacing:
If you would like to verify, this is a small project to reproduce the problem — notice I removed the JAR file (binary) from Gradle.
I have a very simple proof of concept around the
Quarkus JNoSQL
extension that usesGradle
andJava
21.I'm experiencing a failure when trying to run the
Quarkus
tests:Show/Hide Stacktrace
```shell java.lang.RuntimeException: java.lang.RuntimeException: io.quarkus.builder.BuildException: Build failure: Build failed due to errors [error]: Build step io.quarkus.arc.deployment.ArcProcessor#validate threw an exception: jakarta.enterprise.inject.spi.DeploymentException: Found 2 deployment problems: [1] Unsatisfied dependency for type org.eclipse.jnosql.mapping.metadata.GroupEntityMetadata and qualifiers [@Default] - injection target: org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata#extension - declared on CLASS bean [types=[org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata, org.eclipse.jnosql.mapping.metadata.EntitiesMetadata, java.lang.Object], qualifiers=[@Default, @Any], target=org.eclipse.jnosql.mapping.reflection.DefaultEntitiesMetadata] [2] Unsatisfied dependency for type org.eclipse.jnosql.communication.semistructured.DatabaseConfiguration and qualifiers [@Default] - injection target: io.quarkiverse.jnosql.core.runtime.AbstractManagerProducer#configuration - declared on CLASS bean [types=[io.quarkiverse.jnosql.document.runtime.DocumentManagerProducer, java.util.function.SupplierIt's not clear if this is a problem with the extension in question, but this is the starting point :grimacing:
If you would like to verify, this is a small project to reproduce the problem — notice I removed the JAR file (binary) from
Gradle
.