Aurélien Pupier created CAMEL-19917:
---------------------------------------

             Summary: Camel JBang dependency copy is not working on in-progress 
edition file
                 Key: CAMEL-19917
                 URL: https://issues.apache.org/jira/browse/CAMEL-19917
             Project: Camel
          Issue Type: Bug
    Affects Versions: 4.0.1
            Reporter: Aurélien Pupier


When calling something like:

{noformat}
jbang camel@apache/camel dependency copy 
--output-directory="/home/apupier/.config/Code/User/globalStorage/redhat.vscode-camelk/java-dependencies"
 "/home/apupier/ws/kaoto2/MyRouteBuilderWithAdditionalDependencies.java"
{noformat}

on file with content:
{noformat}
// camel-k: dependency=mvn:org.apache.commons:commons-math3:3.6.1

import org.apache.camel.builder.RouteBuilder;

public class MyRouteBuilderWithAdditionalDependencies extends RouteBuilder{
        public void configure() {
        ArithmeticUt
    }
}
{noformat}

it gives this error:
{noformat}
org.joor.ReflectException: Compilation error:
/MyRouteBuilderWithAdditionalDependencies.java:7: error: not a statement
        ArithmeticUt
        ^
/MyRouteBuilderWithAdditionalDependencies.java:7: error: ';' expected
        ArithmeticUt
                    ^

        at 
org.apache.camel.dsl.java.joor.MultiCompile.compileUnit(MultiCompile.java:153)
        at 
org.apache.camel.dsl.java.joor.MultiCompile.compileUnit(MultiCompile.java:75)
        at 
org.apache.camel.dsl.java.joor.JavaRoutesBuilderLoader.doLoadRoutesBuilders(JavaRoutesBuilderLoader.java:105)
        at 
org.apache.camel.dsl.support.ExtendedRouteBuilderLoaderSupport.loadRoutesBuilders(ExtendedRouteBuilderLoaderSupport.java:45)
        at 
org.apache.camel.impl.engine.DefaultRoutesLoader.findRoutesBuilders(DefaultRoutesLoader.java:127)
        at 
org.apache.camel.main.DefaultRoutesCollector.doCollectRoutesFromDirectory(DefaultRoutesCollector.java:191)
        at 
org.apache.camel.main.DefaultRoutesCollector.collectRoutesFromDirectory(DefaultRoutesCollector.java:165)
        at 
org.apache.camel.main.RoutesConfigurer.configureRoutes(RoutesConfigurer.java:196)
        at 
org.apache.camel.main.BaseMainSupport.configureRoutes(BaseMainSupport.java:564)
        at 
org.apache.camel.main.BaseMainSupport.postProcessCamelContext(BaseMainSupport.java:635)
        at 
org.apache.camel.main.MainSupport.initCamelContext(MainSupport.java:339)
        at org.apache.camel.main.KameletMain.doInit(KameletMain.java:304)
        at 
org.apache.camel.support.service.BaseService.init(BaseService.java:78)
        at 
org.apache.camel.support.service.BaseService.start(BaseService.java:105)
        at 
org.apache.camel.dsl.jbang.core.commands.Run.runKameletMain(Run.java:863)
        at org.apache.camel.dsl.jbang.core.commands.Run.run(Run.java:648)
        at org.apache.camel.dsl.jbang.core.commands.Run.runSilent(Run.java:268)
        at 
org.apache.camel.dsl.jbang.core.commands.ExportBaseCommand.runSilently(ExportBaseCommand.java:278)
        at 
org.apache.camel.dsl.jbang.core.commands.ExportCamelMain.export(ExportCamelMain.java:66)
        at 
org.apache.camel.dsl.jbang.core.commands.Export.export(Export.java:130)
        at 
org.apache.camel.dsl.jbang.core.commands.DependencyCopy.doExport(DependencyCopy.java:115)
        at 
org.apache.camel.dsl.jbang.core.commands.DependencyCopy.export(DependencyCopy.java:51)
        at 
org.apache.camel.dsl.jbang.core.commands.ExportBaseCommand.doCall(ExportBaseCommand.java:215)
        at 
org.apache.camel.dsl.jbang.core.commands.Export.doCall(Export.java:28)
        at 
org.apache.camel.dsl.jbang.core.commands.DependencyCopy.doCall(DependencyCopy.java:46)
        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:36)
        at picocli.CommandLine.executeUserObject(CommandLine.java:2041)
        at picocli.CommandLine.access$1500(CommandLine.java:148)
        at 
picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2461)
        at picocli.CommandLine$RunLast.handle(CommandLine.java:2453)
        at picocli.CommandLine$RunLast.handle(CommandLine.java:2415)
        at 
picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2273)
        at picocli.CommandLine$RunLast.execute(CommandLine.java:2417)
        at picocli.CommandLine.execute(CommandLine.java:2170)
        at 
org.apache.camel.dsl.jbang.core.commands.CamelJBangMain.run(CamelJBangMain.java:159)
        at main.CamelJBang.main(CamelJBang.java:36)
{noformat}

kamel local was supporting not yet compiling files. camel dependency copy is 
the replacement



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to