[ 
https://issues.apache.org/jira/browse/CAMEL-25497?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18125666#comment-18125666
 ] 

Claus Ibsen commented on CAMEL-25497:
-------------------------------------

Merged to main in https://github.com/apache/camel/pull/27630 (fixed in 4.23.0).

_Claude Code on behalf of davsclaus_

> 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
>             Fix For: 4.23.0
>
>
> 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)

Reply via email to