This is an automated email from the ASF dual-hosted git repository. jamesnetherton pushed a commit to branch 3.33.x in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git
commit 22c699344a535142b29bb180f9aa523cab92a056 Author: James Netherton <[email protected]> AuthorDate: Tue Jun 23 11:03:31 2026 +0100 Fixes #8783. Use getRuntimeDependencies() instead of getDependencies() to avoid matching deployment-only transitives Co-authored-by: Claude Opus 4.6 (1M context) <[email protected]> --- .../support/langchain4j/deployment/SupportLangchain4jProcessor.java | 6 +++--- .../quarkus/support/spring/deployment/SpringKotlinProcessor.java | 2 +- .../quarkus/component/csimple/deployment/CSimpleProcessor.java | 2 +- .../camel/quarkus/component/groovy/deployment/GroovyProcessor.java | 2 +- .../apache/camel/quarkus/component/hl7/deployment/Hl7Processor.java | 2 +- .../quarkus/dsl/java/joor/deployment/JavaJoorDslProcessor.java | 2 +- .../camel/quarkus/component/joor/deployment/JoorProcessor.java | 2 +- .../camel/quarkus/component/quartz/deployment/QuartzProcessor.java | 2 +- .../quarkus/component/xchange/deployment/XchangeProcessor.java | 2 +- integration-tests/amqp/pom.xml | 6 ++++++ 10 files changed, 17 insertions(+), 11 deletions(-) diff --git a/extensions-support/langchain4j/deployment/src/main/java/org/apache/camel/quarkus/component/support/langchain4j/deployment/SupportLangchain4jProcessor.java b/extensions-support/langchain4j/deployment/src/main/java/org/apache/camel/quarkus/component/support/langchain4j/deployment/SupportLangchain4jProcessor.java index 6c74ee9185..be63024c8b 100644 --- a/extensions-support/langchain4j/deployment/src/main/java/org/apache/camel/quarkus/component/support/langchain4j/deployment/SupportLangchain4jProcessor.java +++ b/extensions-support/langchain4j/deployment/src/main/java/org/apache/camel/quarkus/component/support/langchain4j/deployment/SupportLangchain4jProcessor.java @@ -79,7 +79,7 @@ class SupportLangchain4jProcessor { @BuildStep void indexDependencies(CurateOutcomeBuildItem curateOutcome, BuildProducer<IndexDependencyBuildItem> indexedDependencies) { ApplicationModel applicationModel = curateOutcome.getApplicationModel(); - for (ResolvedDependency dependency : applicationModel.getDependencies()) { + for (ResolvedDependency dependency : applicationModel.getRuntimeDependencies()) { if (dependency.getGroupId().equals("dev.langchain4j")) { indexedDependencies.produce(new IndexDependencyBuildItem(dependency.getGroupId(), dependency.getArtifactId())); } @@ -248,7 +248,7 @@ class SupportLangchain4jProcessor { BuildProducer<IndexDependencyBuildItem> indexDependency) { ApplicationModel applicationModel = curateOutcome.getApplicationModel(); - for (ResolvedDependency dependency : applicationModel.getDependencies()) { + for (ResolvedDependency dependency : applicationModel.getRuntimeDependencies()) { String groupId = dependency.getGroupId(); String artifactId = dependency.getArtifactId(); @@ -300,7 +300,7 @@ class SupportLangchain4jProcessor { nativeImageResource.produce(new NativeImageResourceBuildItem("native/lib/tokenizers.properties")); - for (ResolvedDependency dependency : curateOutcome.getApplicationModel().getDependencies()) { + for (ResolvedDependency dependency : curateOutcome.getApplicationModel().getRuntimeDependencies()) { String artifactId = dependency.getArtifactId(); // Native image resources for embeddings tokenizer metadata diff --git a/extensions-support/spring/deployment/src/main/java/org/apache/camel/quarkus/support/spring/deployment/SpringKotlinProcessor.java b/extensions-support/spring/deployment/src/main/java/org/apache/camel/quarkus/support/spring/deployment/SpringKotlinProcessor.java index 10f1f5a52d..756dd9ab33 100644 --- a/extensions-support/spring/deployment/src/main/java/org/apache/camel/quarkus/support/spring/deployment/SpringKotlinProcessor.java +++ b/extensions-support/spring/deployment/src/main/java/org/apache/camel/quarkus/support/spring/deployment/SpringKotlinProcessor.java @@ -56,7 +56,7 @@ public class SpringKotlinProcessor { private boolean isKotlinStdlibAvailable(ApplicationModel applicationModel) { return applicationModel - .getDependencies() + .getRuntimeDependencies() .stream() .anyMatch(dependency -> dependency.getArtifactId().startsWith("kotlin-stdlib")); } diff --git a/extensions/csimple/deployment/src/main/java/org/apache/camel/quarkus/component/csimple/deployment/CSimpleProcessor.java b/extensions/csimple/deployment/src/main/java/org/apache/camel/quarkus/component/csimple/deployment/CSimpleProcessor.java index a207e424df..9e354bb9cb 100644 --- a/extensions/csimple/deployment/src/main/java/org/apache/camel/quarkus/component/csimple/deployment/CSimpleProcessor.java +++ b/extensions/csimple/deployment/src/main/java/org/apache/camel/quarkus/component/csimple/deployment/CSimpleProcessor.java @@ -207,7 +207,7 @@ class CSimpleProcessor { final RuntimeValue<?> csimpleLanguage = recorder.buildCSimpleLanguage(builder); return new CamelBeanBuildItem("csimple", CSimpleLanguage.class.getName(), csimpleLanguage); - } else if (curateOutcomeBuildItem.getApplicationModel().getDependencies().stream().noneMatch( + } else if (curateOutcomeBuildItem.getApplicationModel().getRuntimeDependencies().stream().noneMatch( x -> x.getGroupId().equals("org.apache.camel") && x.getArtifactId().equals("camel-csimple-joor"))) { LOG.warn( "The expression extraction process has been disabled or failed, please add camel-csimple-joor to your classpath to compile the expressions at runtime"); diff --git a/extensions/groovy/deployment/src/main/java/org/apache/camel/quarkus/component/groovy/deployment/GroovyProcessor.java b/extensions/groovy/deployment/src/main/java/org/apache/camel/quarkus/component/groovy/deployment/GroovyProcessor.java index 136a111d2e..49e8f349b3 100644 --- a/extensions/groovy/deployment/src/main/java/org/apache/camel/quarkus/component/groovy/deployment/GroovyProcessor.java +++ b/extensions/groovy/deployment/src/main/java/org/apache/camel/quarkus/component/groovy/deployment/GroovyProcessor.java @@ -128,7 +128,7 @@ class GroovyProcessor { // Disable InvokeDynamic because it triggers code paths to GraalVM deleted MethodHandleNatives.setCallSiteTargetNormal configuration.getOptimizationOptions().put(CompilerConfiguration.INVOKEDYNAMIC, Boolean.FALSE); configuration.setClasspathList( - curateOutcomeBuildItem.getApplicationModel().getDependencies().stream() + curateOutcomeBuildItem.getApplicationModel().getRuntimeDependencies().stream() .map(ResolvedDependency::getResolvedPaths) .flatMap(PathCollection::stream) .map(Objects::toString) diff --git a/extensions/hl7/deployment/src/main/java/org/apache/camel/quarkus/component/hl7/deployment/Hl7Processor.java b/extensions/hl7/deployment/src/main/java/org/apache/camel/quarkus/component/hl7/deployment/Hl7Processor.java index 107778b8ed..10b477fad3 100644 --- a/extensions/hl7/deployment/src/main/java/org/apache/camel/quarkus/component/hl7/deployment/Hl7Processor.java +++ b/extensions/hl7/deployment/src/main/java/org/apache/camel/quarkus/component/hl7/deployment/Hl7Processor.java @@ -46,7 +46,7 @@ class Hl7Processor { void indexDependencies(BuildProducer<IndexDependencyBuildItem> indexedDependency, CurateOutcomeBuildItem curateOutcome) { // Index any optional hapi-structures dependencies present on the classpath curateOutcome.getApplicationModel() - .getDependencies() + .getRuntimeDependencies() .stream() .filter(appArtifact -> appArtifact.getGroupId().equals(CA_UHN_HAPI_GROUP_ID) && appArtifact.getArtifactId().startsWith("hapi-structures-")) diff --git a/extensions/java-joor-dsl/deployment/src/main/java/org/apache/camel/quarkus/dsl/java/joor/deployment/JavaJoorDslProcessor.java b/extensions/java-joor-dsl/deployment/src/main/java/org/apache/camel/quarkus/dsl/java/joor/deployment/JavaJoorDslProcessor.java index 06cc366529..a4c41ada61 100644 --- a/extensions/java-joor-dsl/deployment/src/main/java/org/apache/camel/quarkus/dsl/java/joor/deployment/JavaJoorDslProcessor.java +++ b/extensions/java-joor-dsl/deployment/src/main/java/org/apache/camel/quarkus/dsl/java/joor/deployment/JavaJoorDslProcessor.java @@ -93,7 +93,7 @@ public class JavaJoorDslProcessor { unit, List.of( "-classpath", - curateOutcomeBuildItem.getApplicationModel().getDependencies().stream() + curateOutcomeBuildItem.getApplicationModel().getRuntimeDependencies().stream() .map(ResolvedDependency::getResolvedPaths) .flatMap(PathCollection::stream) .map(Objects::toString) diff --git a/extensions/joor/deployment/src/main/java/org/apache/camel/quarkus/component/joor/deployment/JoorProcessor.java b/extensions/joor/deployment/src/main/java/org/apache/camel/quarkus/component/joor/deployment/JoorProcessor.java index a0a37f6175..9d98746639 100644 --- a/extensions/joor/deployment/src/main/java/org/apache/camel/quarkus/component/joor/deployment/JoorProcessor.java +++ b/extensions/joor/deployment/src/main/java/org/apache/camel/quarkus/component/joor/deployment/JoorProcessor.java @@ -132,7 +132,7 @@ class JoorProcessor { unit.addClass(source.getClassName(), source.getSourceCode()); } ApplicationModel model = curateOutcomeBuildItem.getApplicationModel(); - List<ResolvedDependency> dependencies = new ArrayList<>(model.getDependencies()); + List<ResolvedDependency> dependencies = new ArrayList<>(model.getRuntimeDependencies()); dependencies.add(model.getAppArtifact()); LOG.debug("Compiling unit: {}", unit); CompilationUnit.Result compilationResult = MultiCompile.compileUnit( diff --git a/extensions/quartz/deployment/src/main/java/org/apache/camel/quarkus/component/quartz/deployment/QuartzProcessor.java b/extensions/quartz/deployment/src/main/java/org/apache/camel/quarkus/component/quartz/deployment/QuartzProcessor.java index 6ddda865b3..53adb245b5 100644 --- a/extensions/quartz/deployment/src/main/java/org/apache/camel/quarkus/component/quartz/deployment/QuartzProcessor.java +++ b/extensions/quartz/deployment/src/main/java/org/apache/camel/quarkus/component/quartz/deployment/QuartzProcessor.java @@ -79,7 +79,7 @@ class QuartzProcessor { IndexView index = combinedIndex.getIndex(); ApplicationModel applicationModel = curateOutcome.getApplicationModel(); - boolean oracleBlobIsPresent = applicationModel.getDependencies().stream() + boolean oracleBlobIsPresent = applicationModel.getRuntimeDependencies().stream() .anyMatch(d -> d.getGroupId().equals("com.oracle.database.jdbc")); final String[] delegatesImpl = index diff --git a/extensions/xchange/deployment/src/main/java/org/apache/camel/quarkus/component/xchange/deployment/XchangeProcessor.java b/extensions/xchange/deployment/src/main/java/org/apache/camel/quarkus/component/xchange/deployment/XchangeProcessor.java index 192c72c029..5a89b8503a 100644 --- a/extensions/xchange/deployment/src/main/java/org/apache/camel/quarkus/component/xchange/deployment/XchangeProcessor.java +++ b/extensions/xchange/deployment/src/main/java/org/apache/camel/quarkus/component/xchange/deployment/XchangeProcessor.java @@ -63,7 +63,7 @@ class XchangeProcessor { CurateOutcomeBuildItem curateOutcome) { ApplicationModel applicationModel = curateOutcome.getApplicationModel(); - for (ResolvedDependency dependency : applicationModel.getDependencies()) { + for (ResolvedDependency dependency : applicationModel.getRuntimeDependencies()) { if (dependency.getGroupId().equals("org.knowm.xchange")) { // Index any org.knowm.xchange dependencies present on the classpath as they contain the APIs for interacting with each crypto exchange String artifactId = dependency.getArtifactId(); diff --git a/integration-tests/amqp/pom.xml b/integration-tests/amqp/pom.xml index dfc11cf521..1651a1a3f3 100644 --- a/integration-tests/amqp/pom.xml +++ b/integration-tests/amqp/pom.xml @@ -48,6 +48,12 @@ <artifactId>quarkus-pooled-jms</artifactId> </dependency> + <!-- Only present to verify https://github.com/apache/camel-quarkus/issues/8783 --> + <dependency> + <groupId>io.quarkus</groupId> + <artifactId>quarkus-smallrye-openapi</artifactId> + </dependency> + <!-- test dependencies --> <dependency> <groupId>io.quarkus</groupId>
