This is an automated email from the ASF dual-hosted git repository.
gnodet pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new c00319b34c6b CAMEL-23235: Propagate --java-version option to jbang
run/debug commands
c00319b34c6b is described below
commit c00319b34c6b7d1afbade261a4bc02b4a8a14c6c
Author: Salvatore Mongiardo <[email protected]>
AuthorDate: Mon Mar 23 22:40:52 2026 +0100
CAMEL-23235: Propagate --java-version option to jbang run/debug commands
When running camel run or camel debug with --java-version, the option was
not propagated to the underlying jbang commands, causing failures.
---
.../camel/dsl/jbang/core/commands/ExportBaseCommand.java | 1 +
.../java/org/apache/camel/dsl/jbang/core/commands/Run.java | 12 ++++++++++++
2 files changed, 13 insertions(+)
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
index a45d4b79b088..72f2b6206e10 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
@@ -466,6 +466,7 @@ public abstract class ExportBaseCommand extends
CamelCommand {
run.quarkusGroupId = quarkusGroupId;
run.springBootVersion = springBootVersion;
run.kameletsVersion = kameletsVersion;
+ run.javaVersion = javaVersion;
run.localKameletDir = localKameletDir;
run.ignoreLoadingError = ignoreLoadingError;
run.lazyBean = lazyBean;
diff --git
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
index 3c8a946ccb99..653b99ea8541 100644
---
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
+++
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
@@ -44,6 +44,7 @@ import org.apache.camel.catalog.CamelCatalog;
import org.apache.camel.catalog.DefaultCamelCatalog;
import org.apache.camel.dsl.jbang.core.common.CommandLineHelper;
import org.apache.camel.dsl.jbang.core.common.EnvironmentHelper;
+import org.apache.camel.dsl.jbang.core.common.JavaVersionCompletionCandidates;
import org.apache.camel.dsl.jbang.core.common.LauncherHelper;
import org.apache.camel.dsl.jbang.core.common.LoggingLevelCompletionCandidates;
import org.apache.camel.dsl.jbang.core.common.Plugin;
@@ -169,6 +170,10 @@ public class Run extends CamelCommand {
@Option(names = { "--empty" }, defaultValue = "false", description = "Run
an empty Camel without loading source files")
public boolean empty;
+ @CommandLine.Option(names = { "--java-version" }, completionCandidates =
JavaVersionCompletionCandidates.class,
+ description = "Java version
(${COMPLETION-CANDIDATES})", defaultValue = "21")
+ protected String javaVersion = "21";
+
@Option(names = { "--camel-version" }, description = "To run using a
different Camel version than the default version.")
String camelVersion;
@@ -632,6 +637,7 @@ public class Run extends CamelCommand {
writeSetting(main, profileProperties, QUARKUS_VERSION, quarkusVersion);
writeSetting(main, profileProperties, QUARKUS_GROUP_ID,
quarkusGroupId);
writeSetting(main, profileProperties, QUARKUS_ARTIFACT_ID,
quarkusArtifactId);
+ writeSetting(main, profileProperties, JAVA_VERSION, javaVersion);
// command line arguments
if (property != null) {
@@ -1104,6 +1110,7 @@ public class Run extends CamelCommand {
eq.quarkusGroupId =
PropertyResolver.fromSystemProperty(QUARKUS_GROUP_ID, () ->
this.quarkusGroupId);
eq.quarkusArtifactId =
PropertyResolver.fromSystemProperty(QUARKUS_ARTIFACT_ID, () ->
this.quarkusArtifactId);
eq.camelVersion = this.camelVersion;
+ eq.javaVersion = this.javaVersion;
eq.kameletsVersion = this.kameletsVersion;
eq.exportDir = runDirPath.toString();
eq.localKameletDir = this.localKameletDir;
@@ -1211,6 +1218,7 @@ public class Run extends CamelCommand {
eq.camelVersion = this.camelVersion;
eq.camelSpringBootVersion =
PropertyResolver.fromSystemProperty(CAMEL_SPRING_BOOT_VERSION,
() -> this.camelSpringBootVersion != null ?
this.camelSpringBootVersion : this.camelVersion);
+ eq.javaVersion = this.javaVersion;
eq.kameletsVersion = this.kameletsVersion;
eq.exportDir = runDirPath.toString();
eq.localKameletDir = this.localKameletDir;
@@ -1392,6 +1400,7 @@ public class Run extends CamelCommand {
camelVersion = answer.getProperty(CAMEL_VERSION, camelVersion);
kameletsVersion = answer.getProperty(KAMELETS_VERSION,
kameletsVersion);
springBootVersion = answer.getProperty(SPRING_BOOT_VERSION,
springBootVersion);
+ javaVersion = answer.getProperty(JAVA_VERSION, javaVersion);
quarkusGroupId = answer.getProperty(QUARKUS_GROUP_ID,
quarkusGroupId);
quarkusArtifactId = answer.getProperty(QUARKUS_ARTIFACT_ID,
quarkusArtifactId);
quarkusVersion = answer.getProperty(QUARKUS_VERSION,
quarkusVersion);
@@ -1474,6 +1483,9 @@ public class Run extends CamelCommand {
cmds.removeIf(arg -> arg.startsWith("--jvm-debug"));
}
+ if (javaVersion != null) {
+ jbangArgs.add("--java-version=" + javaVersion);
+ }
if (repositories != null) {
jbangArgs.add("--repos=" + repositories);
}