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)

Reply via email to