[
https://issues.apache.org/jira/browse/CAMEL-23939?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18094561#comment-18094561
]
Christoph Deppisch commented on CAMEL-23939:
--------------------------------------------
I have seen this in Kamelets integration tests on Avro Kamelets:
[https://github.com/apache/camel-kamelets/tree/main/tests/camel-kamelets-itest/src/test/resources/avro]
In case you remove the _*jbang.properties*_ you will hit the error when running
the Avro tests.
> Dependencies defined on Kamelet are ignored in Camel CLI
> --------------------------------------------------------
>
> Key: CAMEL-23939
> URL: https://issues.apache.org/jira/browse/CAMEL-23939
> Project: Camel
> Issue Type: Bug
> Components: camel-kamelet, camel-kamelet-main
> Reporter: Christoph Deppisch
> Priority: Major
>
> The
> [resolve-pojo-schema-action|https://github.com/apache/camel-kamelets/blob/main/kamelets/resolve-pojo-schema-action.kamelet.yaml]
> Kamelet defines the following dependencies:
> {code:java}
> dependencies:
> - "camel:kamelet"
> - "camel:core"
> - "camel:jackson-avro"
> - "camel:jackson-protobuf" {code}
> A route or Pipe that uses this Kamelet should automatically resolve these
> dependencies when it is run via Camel CLI.
> Apparently the runtime is missing both _*camel:jackson-avro*_ and
> _*camel:jackson-protobuf*_ for some reason.
> I also tried to explicitly add the dependency via Camel CLI command:
> {noformat}
> camel run --dependency camel-jackson-avro my-route.yaml{noformat}
> But still the Camel runtime complains about a missing class from that
> component:
> {code:java}
> Stacktrace
> ---------------------------------------------------------------------------------------------------------------------------------------
> org.apache.camel.CamelExecutionException: Exception occurred during execution
> on the exchange: Exchange[7C4364CEA8460AE-0000000000000003]
> at
> org.apache.camel.CamelExecutionException.wrapCamelExecutionException(CamelExecutionException.java:60)
> at
> org.apache.camel.support.AbstractExchange.setException(AbstractExchange.java:593)
> at
> org.apache.camel.support.DefaultExchange.setException(DefaultExchange.java:32)
> at
> org.apache.camel.support.processor.DelegateSyncProcessor.process(DelegateSyncProcessor.java:70)
> at
> org.apache.camel.processor.errorhandler.RedeliveryErrorHandler$SimpleTask.handleFirst(RedeliveryErrorHandler.java:445)
> at
> org.apache.camel.processor.errorhandler.RedeliveryErrorHandler$SimpleTask.run(RedeliveryErrorHandler.java:421)
> at
> org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.doRun(DefaultReactiveExecutor.java:202)
> at
> org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.executeReactiveWork(DefaultReactiveExecutor.java:192)
> at
> org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.tryExecuteReactiveWork(DefaultReactiveExecutor.java:169)
> at
> org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.schedule(DefaultReactiveExecutor.java:143)
> at
> org.apache.camel.impl.engine.DefaultReactiveExecutor.scheduleMain(DefaultReactiveExecutor.java:59)
> at org.apache.camel.processor.Pipeline.process(Pipeline.java:165)
> at
> org.apache.camel.impl.engine.CamelInternalProcessor.processNonTransacted(CamelInternalProcessor.java:385)
> at
> org.apache.camel.impl.engine.CamelInternalProcessor.process(CamelInternalProcessor.java:361)
> at
> org.apache.camel.component.timer.TimerConsumer.sendTimerExchange(TimerConsumer.java:293)
> at
> org.apache.camel.component.timer.TimerConsumer$1.doRun(TimerConsumer.java:164)
> at
> org.apache.camel.component.timer.TimerConsumer$1.run(TimerConsumer.java:136)
> at java.base/java.util.TimerThread.mainLoop(Timer.java:572)
> at java.base/java.util.TimerThread.run(Timer.java:522)
> Caused by: java.lang.NoClassDefFoundError:
> org/apache/camel/component/jackson/avro/transform/AvroSchemaResolver
> at
> org.apache.camel.component.kamelet.utils.format.schema.DelegatingSchemaResolver.fromMimeType(DelegatingSchemaResolver.java:75)
> at
> org.apache.camel.component.kamelet.utils.format.schema.DelegatingSchemaResolver.process(DelegatingSchemaResolver.java:55)
> at
> org.apache.camel.support.processor.DelegateSyncProcessor.process(DelegateSyncProcessor.java:67)
> ... 15 more
> Caused by: java.lang.ClassNotFoundException:
> org.apache.camel.component.jackson.avro.transform.AvroSchemaResolver
> at
> java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:580)
> at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:490)
> ... 18 more {code}
> The only way to work around this is to add a _*jbang.properties*_ file with
> the additional runtime dependency as
> {noformat}
> run.deps=org.apache.camel:camel-jackson-avro:LATEST{noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)