You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I've been working to make camel-k use the Quarkus fast-jar package format. With Kotlin based Camel routes, the application statup fails.
I'm no Kotlin expert, but its bootstrap is calling getResources("") on the ClassLoader (not sure if that's valid or not). When the name argument passed to RunnerClassLoader.sanitizeName is an empty string, then an exception is thrown:
2021-01-25 13:24:08,916 ERROR [io.qua.run.Application] (main) Failed to start application (with profile prod): 2021-01-25 14:29:11,572 ERROR [io.qua.run.Application] (main) Failed to start application (with profile prod): java.lang.StringIndexOutOfBoundsException: String index out of range: 0
at java.base/java.lang.StringLatin1.charAt(StringLatin1.java:47)
at java.base/java.lang.String.charAt(String.java:693)
at io.quarkus.bootstrap.runner.RunnerClassLoader.sanitizeName(RunnerClassLoader.java:150)
at io.quarkus.bootstrap.runner.RunnerClassLoader.findResources(RunnerClassLoader.java:180)
at java.base/java.lang.ClassLoader.getResources(ClassLoader.java:1467)
at kotlin.script.experimental.jvm.util.JvmClasspathUtilKt.rawClassPathFromKeyResourcePath(jvmClasspathUtil.kt:130)
at kotlin.script.experimental.jvm.util.JvmClasspathUtilKt.classPathFromTypicalResourceUrls(jvmClasspathUtil.kt:143)
at kotlin.script.experimental.jvm.util.JvmClasspathUtilKt$classpathFromClassloader$1.invoke(jvmClasspathUtil.kt:87)
at kotlin.script.experimental.jvm.util.JvmClasspathUtilKt$classpathFromClassloader$1.invoke(jvmClasspathUtil.kt)
at kotlin.sequences.FlatteningSequence$iterator$1.ensureItemIterator(Sequences.kt:315)
at kotlin.sequences.FlatteningSequence$iterator$1.hasNext(Sequences.kt:303)
at kotlin.sequences.FilteringSequence$iterator$1.calcNext(Sequences.kt:169)
at kotlin.sequences.FilteringSequence$iterator$1.hasNext(Sequences.kt:194)
at kotlin.sequences.SequencesKt___SequencesKt.toCollection(_Sequences.kt:752)
at kotlin.sequences.SequencesKt___SequencesKt.toMutableList(_Sequences.kt:782)
at kotlin.sequences.SequencesKt___SequencesKt.toList(_Sequences.kt:773)
at kotlin.script.experimental.jvm.util.JvmClasspathUtilKt.classpathFromClassloader(jvmClasspathUtil.kt:92)
at kotlin.script.experimental.jvm.util.JvmClasspathUtilKt.scriptCompilationClasspathFromContextOrNull(jvmClasspathUtil.kt:275)
at kotlin.script.experimental.jvm.util.JvmClasspathUtilKt.scriptCompilationClasspathFromContext(jvmClasspathUtil.kt:298)
at kotlin.script.experimental.jvm.JvmScriptCompilationKt.dependenciesFromClassloader(jvmScriptCompilation.kt:57)
at kotlin.script.experimental.jvm.JvmScriptCompilationKt.dependenciesFromClassloader$default(jvmScriptCompilation.kt:54)
The text was updated successfully, but these errors were encountered:
I've been working to make camel-k use the Quarkus fast-jar package format. With Kotlin based Camel routes, the application statup fails.
I'm no Kotlin expert, but its bootstrap is calling
getResources("")
on theClassLoader
(not sure if that's valid or not). When the name argument passed toRunnerClassLoader.sanitizeName
is an empty string, then an exception is thrown:The text was updated successfully, but these errors were encountered: