This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch oldq in repository https://gitbox.apache.org/repos/asf/camel.git
commit 6c0e352df700a634043068f3e77879b23e008623 Author: Claus Ibsen <claus.ib...@gmail.com> AuthorDate: Wed Jul 23 13:51:31 2025 +0200 CAMEL-22254: camel-jbang - Export to quarkus no longer need a special native property when using quarkus 3.22 or newer --- .../camel/dsl/jbang/core/commands/Debug.java | 2 +- .../dsl/jbang/core/commands/ExportQuarkus.java | 9 ++++++--- .../dsl/jbang/core/commands/ExportSpringBoot.java | 2 +- .../camel/dsl/jbang/core/common/CatalogLoader.java | 2 +- .../camel/dsl/jbang/core/commands/ExportTest.java | 22 ++++++++++++++++++++-- 5 files changed, 29 insertions(+), 8 deletions(-) diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Debug.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Debug.java index 035676fbb0c..ba169769506 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Debug.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Debug.java @@ -583,7 +583,7 @@ public class Debug extends Run { // from camel 4.7 onwards then message history include current line as well // so the history panel needs to output a bit different in this situation boolean top = false; - if (row.version != null && VersionHelper.isGE(row.version, "4.7")) { + if (row.version != null && VersionHelper.isGE(row.version, "4.7.0")) { top = h == row.history.get(row.history.size() - 1); } diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java index ab652794e2e..cbf96574aed 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java @@ -204,13 +204,16 @@ class ExportQuarkus extends Export { if (extra != null) { sj.add(extra); } - if (sj.length() > 0) { - properties.setProperty("quarkus.native.resources.includes", sj.toString()); + if (extra != null || VersionHelper.isLE(quarkusVersion, "3.21.0")) { + // quarkus 3.21 or older need to have quarkus.native.resources.includes configured + if (sj.length() > 0) { + properties.setProperty("quarkus.native.resources.includes", sj.toString()); + } } } // CAMEL-20911 workaround due to a bug in CEQ 3.11 and 3.12 - if (VersionHelper.isBetween(quarkusVersion, "3.11", "3.13")) { + if (VersionHelper.isBetween(quarkusVersion, "3.11.0", "3.13.0")) { if (!properties.containsKey("quarkus.camel.openapi.codegen.model-package")) { properties.put("quarkus.camel.openapi.codegen.model-package", "org.apache.camel.quarkus"); } diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java index 0ee245452c0..687c856e2e0 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java @@ -399,7 +399,7 @@ class ExportSpringBoot extends Export { // skip "camel.server." as this is for camel-main only return null; } - boolean camel44orOlder = camelSpringBootVersion != null && VersionHelper.isLE("4.4", camelSpringBootVersion); + boolean camel44orOlder = camelSpringBootVersion != null && VersionHelper.isLE("4.4.0", camelSpringBootVersion); if (camel44orOlder) { // camel.main.x should be renamed to camel.springboot.x (for camel 4.4.x or older) if (key.startsWith("camel.main.")) { diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/common/CatalogLoader.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/common/CatalogLoader.java index dec3e382aee..6eab9328827 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/common/CatalogLoader.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/common/CatalogLoader.java @@ -159,7 +159,7 @@ public final class CatalogLoader { return answer; } // quarkus 3.2.x and older must have .Final - boolean finalSuffix = VersionHelper.isLE(quarkusVersion, "3.2"); + boolean finalSuffix = VersionHelper.isLE(quarkusVersion, "3.2.0"); if (finalSuffix && !quarkusVersion.endsWith(".Final")) { quarkusVersion += ".Final"; } diff --git a/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/ExportTest.java b/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/ExportTest.java index 475306a1915..be7fba71427 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/ExportTest.java +++ b/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/ExportTest.java @@ -36,6 +36,7 @@ import org.apache.maven.model.io.xpp3.MavenXpp3Reader; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; import org.junit.jupiter.params.provider.MethodSource; @@ -399,8 +400,8 @@ class ExportTest { try (FileInputStream fis = new FileInputStream(appProps)) { String content = IOHelper.loadText(fis); if (rt == RuntimeType.quarkus) { - Assertions.assertTrue(content.contains("quarkus.native.resources.includes=camel/route.yaml"), - "should contain quarkus.native.resources.includes property, was " + content); + Assertions.assertFalse(content.contains("quarkus.native.resources.includes=camel/route.yaml"), + "should not contain quarkus.native.resources.includes property, was " + content); } Assertions.assertFalse(content.contains("camel.main.routes-include-pattern"), "should not contain camel.main.routes-include-pattern property, was " + content); @@ -411,6 +412,23 @@ class ExportTest { } } + @Test + public void olderQuarkusVersion() throws Exception { + LOG.info("olderQuarkusVersion"); + // We need a real file as we want to test the generated content + Export command = createCommand(RuntimeType.quarkus, new String[] { "src/test/resources/route.yaml" }, + "--gav=examples:route:1.0.0", "--dir=" + workingDir, "--quiet", "--quarkus-version=3.21.0"); + int exit = command.doCall(); + + Assertions.assertEquals(0, exit); + + // Application properties + File appProperties = new File(workingDir + "/src/main/resources", "application.properties"); + String content = IOHelper.loadText(new FileInputStream(appProperties)); + Assertions.assertTrue(content.contains("quarkus.native.resources.includes=camel/route.yaml"), + "should not contain quarkus.native.resources.includes property, was " + content); + } + @ParameterizedTest @MethodSource("runtimeProvider") public void shouldGenerateJavaContent(RuntimeType rt) throws Exception {