You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Thomas Raddatz (Jira)" <ji...@apache.org> on 2026/10/09 12:03:00 UTC

[jira] [Updated] (CAMEL-25497) camel-jbang - camel run with --jvm-debug, --jvm-args or --open-telemetry-agent starts the default Camel version of the jbang catalog

     [ https://issues.apache.org/jira/browse/CAMEL-25497?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Thomas Raddatz updated CAMEL-25497:
-----------------------------------
    Priority: Minor  (was: Major)

> camel-jbang - camel run with --jvm-debug, --jvm-args or --open-telemetry-agent starts the default Camel version of the jbang catalog
> ------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-25497
>                 URL: https://issues.apache.org/jira/browse/CAMEL-25497
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-jbang
>    Affects Versions: 4.22.1
>            Reporter: Thomas Raddatz
>            Priority: Minor
>
> With {{\-\-jvm-debug}}, {{\-\-jvm-args}} or {{\-\-open-telemetry-agent}}, {{camel run}} starts the integration in a new JVM with {{jbang run ... camel@apache/camel run ...}} ({{Run.runCamelVersion}}). It hands {{\-Dcamel.jbang.version}} to that JVM only when {{\-\-camel-version}} is given and differs from the running version. Otherwise the new JVM runs the default version of the {{camel@apache/camel}} catalog script ({{CamelJBang.java}}, currently 4.22.0), not the version the user started.
> A Camel CLI pinned with {{jbang \-Dcamel.jbang.version=4.22.1}}, or started with a {{\-\-camel-version}} equal to the running version (it is reset as "same version"), therefore runs the integration on 4.22.0. With the Camel JBang test plugin installed, the new JVM fails at start-up (see below); otherwise it runs the other Camel version without a warning.
> h3. Reproduction (Camel CLI 4.22.1)
> {code:bash}
> jbang -Dcamel.jbang.version=4.22.1 camel@apache/camel init hello.camel.yaml
> jbang -Dcamel.jbang.version=4.22.1 camel@apache/camel run hello.camel.yaml --jvm-args=-Dfoo=bar --max-seconds=10 --verbose
> {code}
> The command line printed for the new JVM has no {{\-Dcamel.jbang.version}}:
> {noformat}
> jbang run --java-options=-Dfoo=bar --java=21 camel@apache/camel run hello.camel.yaml --max-seconds=10 --verbose --kamelets-version=4.22.0
> {noformat}
> With the Camel JBang test plugin installed, the new JVM then resolves the plugin in 4.22.0 and fails:
> {noformat}
> Artifact org.apache.camel:camel-jbang-plugin-test:pom:4.22.0 is present in the local repository, ...
> Exception in thread "main" java.lang.NoClassDefFoundError: org/citrusframework/jbang/cli/Printer
> {noformat}
> The same {{camel run}} without these options starts Apache Camel 4.22.1. {{\-\-jvm-debug=5005}} builds the same command line with {{\-\-debug=5005}}.
> Expected: the new JVM runs the Camel version of the CLI that starts it, unless {{\-\-camel-version}} asks for another one.
> The {{camelVersion != null}} guard dates from CAMEL-19726, which added the JVM debug relaunch to the code path that until then served {{\-\-camel-version}} only.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)