Marco Carletti created CAMEL-21784: -------------------------------------- Summary: camel-jbang: running app from maven project should support at least the exported projects Key: CAMEL-21784 URL: https://issues.apache.org/jira/browse/CAMEL-21784 Project: Camel Issue Type: Improvement Components: camel-jbang Affects Versions: 4.10.0 Environment: {code:bash} $ camel version JBang version: 0.123.0 Camel JBang version: 4.10.0 {code} Reporter: Marco Carletti
Running camel from maven project as stated in the [documentation|https://camel.apache.org/manual/camel-jbang.html#_running_a_maven_or_gradle_based_project] won't load all the necessary dependencies, maybe it should support jbang generated project. i.e. exporting to Spring Boot runtime will generate a correct Maven project but it is unable to run it: {code:bash} $ camel init cheese.xml $ camel export --runtime=spring-boot --name=sb-app Generating fresh run data Exporting as Spring Boot project to: . $ camel run pom.xml 2025-02-24 10:50:22.891 INFO 98372 --- [ main] org.apache.camel.main.MainSupport : Apache Camel (JBang) 4.10.0 is starting 2025-02-24 10:50:23.083 INFO 98372 --- [ main] org.apache.camel.main.MainSupport : Using Java 17.0.14 with PID 98372. Started by marco in /tmp/sb-test 2025-02-24 10:50:23.154 INFO 98372 --- [ main] org.apache.camel.main.BaseMainSupport : Properties location: file:src/main/resources/application.properties 2025-02-24 10:50:23.208 INFO 98372 --- [ main] org.apache.camel.main.ProfileConfigurer : The application is starting with profile: dev 2025-02-24 10:50:27.485 INFO 98372 --- [ main] .main.download.MavenDependencyDownloader : Resolved: org.apache.camel:camel-java-joor-dsl:4.10.0 (took: 4s257ms) 2025-02-24 10:50:30.724 INFO 98372 --- [ main] .main.download.MavenDependencyDownloader : Resolved: org.apache.camel:camel-endpointdsl:4.10.0 (took: 3s237ms) 2025-02-24 10:50:34.251 INFO 98372 --- [ main] .main.download.MavenDependencyDownloader : Resolved: org.apache.camel:camel-xml-io-dsl:4.10.0 (took: 3s523ms) org.joor.ReflectException: Compilation error: /org/example/project/sbapp/CamelApplication.java:3: error: package org.springframework.boot does not exist import org.springframework.boot.SpringApplication; ^ /org/example/project/sbapp/CamelApplication.java:4: error: package org.springframework.boot.autoconfigure does not exist import org.springframework.boot.autoconfigure.SpringBootApplication; ^ /org/example/project/sbapp/CamelApplication.java:6: error: cannot find symbol @SpringBootApplication ^ symbol: class SpringBootApplication at org.apache.camel.language.joor.MultiCompile.compileUnit(MultiCompile.java:164) at org.apache.camel.language.joor.MultiCompile.compileUnit(MultiCompile.java:75) at org.apache.camel.dsl.java.joor.JavaRoutesBuilderLoader.compileResources(JavaRoutesBuilderLoader.java:217) at org.apache.camel.dsl.java.joor.JavaRoutesBuilderLoader.preParseRoutes(JavaRoutesBuilderLoader.java:105) at org.apache.camel.main.RoutesConfigurer.doConfigureModeline(RoutesConfigurer.java:462) at org.apache.camel.main.RoutesConfigurer.configureModeline(RoutesConfigurer.java:388) at org.apache.camel.main.BaseMainSupport.modelineRoutes(BaseMainSupport.java:824) at org.apache.camel.main.BaseMainSupport.autoconfigure(BaseMainSupport.java:561) at org.apache.camel.main.MainSupport.autoconfigure(MainSupport.java:79) at org.apache.camel.main.KameletMain.autoconfigure(KameletMain.java:759) at org.apache.camel.main.BaseMainSupport.postProcessCamelContext(BaseMainSupport.java:909) at org.apache.camel.main.MainSupport.initCamelContext(MainSupport.java:346) at org.apache.camel.main.KameletMain.doInit(KameletMain.java:375) at org.apache.camel.support.service.BaseService.init(BaseService.java:85) at org.apache.camel.support.service.BaseService.start(BaseService.java:115) at org.apache.camel.dsl.jbang.core.commands.Run.runKameletMain(Run.java:1447) at org.apache.camel.dsl.jbang.core.commands.Run.run(Run.java:908) at org.apache.camel.dsl.jbang.core.commands.Run.doCall(Run.java:341) at org.apache.camel.dsl.jbang.core.commands.CamelCommand.call(CamelCommand.java:71) at org.apache.camel.dsl.jbang.core.commands.CamelCommand.call(CamelCommand.java:37) at picocli.CommandLine.executeUserObject(CommandLine.java:2045) at picocli.CommandLine.access$1500(CommandLine.java:148) at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2465) at picocli.CommandLine$RunLast.handle(CommandLine.java:2457) at picocli.CommandLine$RunLast.handle(CommandLine.java:2419) at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2277) at picocli.CommandLine$RunLast.execute(CommandLine.java:2421) at picocli.CommandLine.execute(CommandLine.java:2174) at org.apache.camel.dsl.jbang.core.commands.CamelJBangMain.run(CamelJBangMain.java:195) at org.apache.camel.dsl.jbang.core.commands.CamelJBangMain.run(CamelJBangMain.java:72) at main.CamelJBang.main(CamelJBang.java:36) 2025-02-24 10:50:34.726 INFO 98372 --- [ngupInterceptor] e.camel.main.DefaultMainShutdownStrategy : JVM shutdown hook triggered by SIGTERM (PID 98372). Shutting down Apache Camel (JBang) 4.10.0 2025-02-24 10:50:34.728 INFO 98372 --- [ngupInterceptor] e.camel.main.DefaultMainShutdownStrategy : Apache Camel (JBang) 4.10.0 is shutdown {code} similar commands exporting to Quarkus application has not compilation problems but the route isn't loaded as expected: {code:bash} $ camel init cheese.xml $ camel export --runtime=quarkus --name=quarkus-app $ camel run pom.xml 2025-02-24 11:49:34.837 INFO 121724 --- [ main] org.apache.camel.main.MainSupport : Apache Camel (JBang) 4.10.0 is starting 2025-02-24 11:49:35.028 INFO 121724 --- [ main] org.apache.camel.main.MainSupport : Using Java 17.0.14 with PID 121724. Started by marco in /tmp/q-test 2025-02-24 11:49:35.096 INFO 121724 --- [ main] org.apache.camel.main.BaseMainSupport : Properties location: file:src/main/resources/application.properties 2025-02-24 11:49:35.155 INFO 121724 --- [ main] org.apache.camel.main.ProfileConfigurer : The application is starting with profile: dev 2025-02-24 11:49:40.175 INFO 121724 --- [ main] .main.download.MavenDependencyDownloader : Downloading: org.apache.camel:camel-xml-io-dsl:4.10.0 (elapsed: 5s) 2025-02-24 11:49:40.800 INFO 121724 --- [ main] .main.download.MavenDependencyDownloader : Resolved: org.apache.camel:camel-xml-io-dsl:4.10.0 (took: 5s625ms) 2025-02-24 11:49:40.846 INFO 121724 --- [ main] org.apache.camel.main.BaseMainSupport : Auto-configuration summary 2025-02-24 11:49:40.846 INFO 121724 --- [ main] org.apache.camel.main.BaseMainSupport : [application.properties] camel.main.routesIncludePattern = camel/cheese.xml 2025-02-24 11:49:40.848 WARN 121724 --- [ main] .camel.dsl.xml.io.XmlRoutesBuilderLoader : Invalid XML document: XML Stream is null 2025-02-24 11:49:40.987 INFO 121724 --- [ main] he.camel.cli.connector.LocalCliConnector : Camel JBang CLI enabled 2025-02-24 11:49:41.017 INFO 121724 --- [ main] e.camel.impl.engine.AbstractCamelContext : Apache Camel 4.10.0 (quarkus-app) is starting 2025-02-24 11:49:41.200 INFO 121724 --- [ main] e.camel.impl.engine.AbstractCamelContext : Routes startup (total:0) 2025-02-24 11:49:41.200 INFO 121724 --- [ main] e.camel.impl.engine.AbstractCamelContext : Apache Camel 4.10.0 (quarkus-app) started in 183ms (build:0ms init:0ms start:183ms boot:6s177ms) {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)