squakez opened a new issue, #5268: URL: https://github.com/apache/camel-quarkus/issues/5268
### Bug description I'm trying to execute a basic Kotlin DSL like: ``` // camel-k: language=kotlin from("timer:kotlin?period=1000") .setBody() .simple("Hello Camel from \${routeId}") .log("\${body}") ``` Using Camel JBang, all is good: ``` $ camel run test.kts --logging-level DEBUG ... 2023-09-06 12:15:26.163 DEBUG 46242 --- [ main] sl.kotlin.KotlinRoutesBuilderLoader : Using JDK home inferred from java.home: /usr/lib/jvm/java-17-openjdk 2023-09-06 12:15:26.164 DEBUG 46242 --- [ main] sl.kotlin.KotlinRoutesBuilderLoader : Using JVM IR backend 2023-09-06 12:15:26.164 DEBUG 46242 --- [ main] sl.kotlin.KotlinRoutesBuilderLoader : Using JVM IR backend 2023-09-06 12:15:26.164 DEBUG 46242 --- [ main] sl.kotlin.KotlinRoutesBuilderLoader : Loading modules: [java.se, jdk.accessibility, jdk.attach, jdk.compiler, jdk.dynalink, jdk.httpserver, jdk.incubator.foreign, jdk.incubator.vector, jdk.jartool, jdk.javadoc, jdk.jconsole, jdk.jdi, jdk.jfr, jdk.jshell, jdk.jsobject, jdk.management, jdk.management.jfr, jdk.net, jdk.nio.mapmode, jdk.sctp, jdk.security.auth, jdk.security.jgss, jdk.unsupported, jdk.unsupported.desktop, jdk.xml.dom, kotlin.stdlib, kotlin.script.runtime, kotlin.reflect, java.base, java.compiler, java.datatransfer, java.desktop, java.xml, java.instrument, java.logging, java.management, java.management.rmi, java.rmi, java.naming, java.net.http, java.prefs, java.scripting, java.security.jgss, java.security.sasl, java.sql, java.transaction.xa, java.sql.rowset, java.xml.crypto, jdk.internal.jvmstat, jdk.management.agent, jdk.jdwp.agent, jdk.internal.ed, jdk.internal.le, jdk.internal.opt] 2023-09-06 12:15:26.164 DEBUG 46242 --- [ main] sl.kotlin.KotlinRoutesBuilderLoader : Loading modules: [java.se, jdk.accessibility, jdk.attach, jdk.compiler, jdk.dynalink, jdk.httpserver, jdk.incubator.foreign, jdk.incubator.vector, jdk.jartool, jdk.javadoc, jdk.jconsole, jdk.jdi, jdk.jfr, jdk.jshell, jdk.jsobject, jdk.management, jdk.management.jfr, jdk.net, jdk.nio.mapmode, jdk.sctp, jdk.security.auth, jdk.security.jgss, jdk.unsupported, jdk.unsupported.desktop, jdk.xml.dom, kotlin.stdlib, kotlin.script.runtime, kotlin.reflect, java.base, java.compiler, java.datatransfer, java.desktop, java.xml, java.instrument, java.logging, java.management, java.management.rmi, java.rmi, java.naming, java.net.http, java.prefs, java.scripting, java.security.jgss, java.security.sasl, java.sql, java.transaction.xa, java.sql.rowset, java.xml.crypto, jdk.internal.jvmstat, jdk.management.agent, jdk.jdwp.agent, jdk.internal.ed, jdk.internal.le, jdk.internal.opt] 2023-09-06 12:15:26.174 DEBUG 46242 --- [ main] .apache.camel.main.RoutesConfigurer : Adding templated routes into CamelContext from RoutesBuilder: Routes: [Route[From[timer:kotlin?period=1000] -> [SetBody[org.apache.camel.builder.ExpressionClause@68d6e126], Log[${body}]]]] 2023-09-06 12:15:26.175 DEBUG 46242 --- [ main] el.impl.engine.AbstractCamelContext : Adding templated routes from builder: Routes: [Route[From[timer:kotlin?period=1000] -> [SetBody[org.apache.camel.builder.ExpressionClause@68d6e126], Log[${body}]]]] ... ``` Packaging the application for Camel Quarkus and running in dev mode is good as well: ``` camel export --runtime=quarkus --gav=g:a:1.0.0 --dir /tmp/test ... 2023-09-06 12:18:04,590 DEBUG [org.apa.cam.dsl.kot.KotlinRoutesBuilderLoader] (Quarkus Main Thread) Using JDK home inferred from java.home: /usr/lib/jvm/java-17-openjdk 2023-09-06 12:18:04,590 DEBUG [org.apa.cam.dsl.kot.KotlinRoutesBuilderLoader] (Quarkus Main Thread) Using JVM IR backend 2023-09-06 12:18:04,590 DEBUG [org.apa.cam.dsl.kot.KotlinRoutesBuilderLoader] (Quarkus Main Thread) Using JVM IR backend 2023-09-06 12:18:04,590 DEBUG [org.apa.cam.dsl.kot.KotlinRoutesBuilderLoader] (Quarkus Main Thread) Loading modules: [java.se, jdk.accessibility, jdk.attach, jdk.compiler, jdk.dynalink, jdk.httpserver, jdk.incubator.foreign, jdk.incubator.vector, jdk.jartool, jdk.javadoc, jdk.jconsole, jdk.jdi, jdk.jfr, jdk.jshell, jdk.jsobject, jdk.management, jdk.management.jfr, jdk.net, jdk.nio.mapmode, jdk.sctp, jdk.security.auth, jdk.security.jgss, jdk.unsupported, jdk.unsupported.desktop, jdk.xml.dom, kotlin.stdlib, kotlin.script.runtime, kotlin.reflect, java.base, java.compiler, java.datatransfer, java.desktop, java.xml, java.instrument, java.logging, java.management, java.management.rmi, java.rmi, java.naming, java.net.http, java.prefs, java.scripting, java.security.jgss, java.security.sasl, java.sql, java.transaction.xa, java.sql.rowset, java.xml.crypto, jdk.internal.jvmstat, jdk.management.agent, jdk.jdwp.agent, jdk.internal.ed, jdk.internal.le, jdk.internal.opt] 2023-09-06 12:18:04,590 DEBUG [org.apa.cam.dsl.kot.KotlinRoutesBuilderLoader] (Quarkus Main Thread) Loading modules: [java.se, jdk.accessibility, jdk.attach, jdk.compiler, jdk.dynalink, jdk.httpserver, jdk.incubator.foreign, jdk.incubator.vector, jdk.jartool, jdk.javadoc, jdk.jconsole, jdk.jdi, jdk.jfr, jdk.jshell, jdk.jsobject, jdk.management, jdk.management.jfr, jdk.net, jdk.nio.mapmode, jdk.sctp, jdk.security.auth, jdk.security.jgss, jdk.unsupported, jdk.unsupported.desktop, jdk.xml.dom, kotlin.stdlib, kotlin.script.runtime, kotlin.reflect, java.base, java.compiler, java.datatransfer, java.desktop, java.xml, java.instrument, java.logging, java.management, java.management.rmi, java.rmi, java.naming, java.net.http, java.prefs, java.scripting, java.security.jgss, java.security.sasl, java.sql, java.transaction.xa, java.sql.rowset, java.xml.crypto, jdk.internal.jvmstat, jdk.management.agent, jdk.jdwp.agent, jdk.internal.ed, jdk.internal.le, jdk.internal.opt] 2023-09-06 12:18:04,593 DEBUG [org.apa.cam.mai.RoutesConfigurer] (Quarkus Main Thread) Adding templated routes into CamelContext from RoutesBuilder: Routes: [Route[From[timer:kotlin?period=1000] -> [SetBody[org.apache.camel.builder.ExpressionClause@51ccf3d], Log[${body}]]]] 2023-09-06 12:18:04,593 DEBUG [org.apa.cam.imp.eng.AbstractCamelContext] (Quarkus Main Thread) Adding templated routes from builder: Routes: [Route[From[timer:kotlin?period=1000] -> [SetBody[org.apache.camel.builder.ExpressionClause@51ccf3d], Log[${body}]]]] ... ``` However when I package the application and try to run the jar, it fails with the following error: ``` java -jar target/quarkus-app/quarkus-run.jar ... 2023-09-06 12:19:09,694 DEBUG [org.apa.cam.dsl.kot.KotlinRoutesBuilderLoader] (main) Using JDK home inferred from java.home: /usr/lib/jvm/java-17-openjdk 2023-09-06 12:19:09,694 DEBUG [org.apa.cam.dsl.kot.KotlinRoutesBuilderLoader] (main) Using JVM IR backend 2023-09-06 12:19:09,694 DEBUG [org.apa.cam.dsl.kot.KotlinRoutesBuilderLoader] (main) Using JVM IR backend 2023-09-06 12:19:09,694 DEBUG [org.apa.cam.dsl.kot.KotlinRoutesBuilderLoader] (main) Loading modules: [java.se, jdk.accessibility, jdk.attach, jdk.compiler, jdk.dynalink, jdk.httpserver, jdk.incubator.foreign, jdk.incubator.vector, jdk.jartool, jdk.javadoc, jdk.jconsole, jdk.jdi, jdk.jfr, jdk.jshell, jdk.jsobject, jdk.management, jdk.management.jfr, jdk.net, jdk.nio.mapmode, jdk.sctp, jdk.security.auth, jdk.security.jgss, jdk.unsupported, jdk.unsupported.desktop, jdk.xml.dom, kotlin.stdlib, kotlin.script.runtime, kotlin.reflect, java.base, java.compiler, java.datatransfer, java.desktop, java.xml, java.instrument, java.logging, java.management, java.management.rmi, java.rmi, java.naming, java.net.http, java.prefs, java.scripting, java.security.jgss, java.security.sasl, java.sql, java.transaction.xa, java.sql.rowset, java.xml.crypto, jdk.internal.jvmstat, jdk.management.agent, jdk.jdwp.agent, jdk.internal.ed, jdk.internal.le, jdk.internal.opt] 2023-09-06 12:19:09,694 ERROR [org.apa.cam.dsl.kot.KotlinRoutesBuilderLoader] (main) Module kotlin.script.runtime cannot be found in the module graph 2023-09-06 12:19:09,695 DEBUG [org.apa.cam.mai.RoutesConfigurer] (main) Adding templated routes into CamelContext from RoutesBuilder: Routes: [] 2023-09-06 12:19:09,695 DEBUG [org.apa.cam.imp.eng.AbstractCamelContext] (main) Adding templated routes from builder: Routes: [] ... ``` This behavior was not happening in CQ version 2. I tried to troubleshoot and check the kotlin dependencies but all seems good. I suspect that between the dev application and the prod application there is however something missing (the hints point to `kotlin.script.runtime` module, altough I can see the dependency where it's expected to be). I run out of ideas on how to continue the investigation. Any help is really appreciated. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@camel.apache.org.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org