Skip to content

cloud-kotlin-coroutines-annotations fails on Kotlin 2.4.0 with @Flag param #810

Description

@Rothes

This happens on executing the command:

java.lang.NoSuchFieldError: Class kotlin.reflect.KParameter$Kind does not have member field 'kotlin.reflect.KParameter$Kind CONTEXT'
        at kotlin.reflect.jvm.internal.ReflectKCallableKt.computeAbsentArguments(ReflectKCallable.kt:96) ~[?:?]
        at kotlin.reflect.jvm.internal.ReflectKCallableImpl$_absentArguments$1.invoke(ReflectKCallableImpl.kt:13) ~[?:?]
        at kotlin.reflect.jvm.internal.ReflectKCallableImpl$_absentArguments$1.invoke(ReflectKCallableImpl.kt:13) ~[?:?]
        at kotlin.reflect.jvm.internal.ReflectProperties$LazySoftVal.invoke(ReflectProperties.java:70) ~[?:?]
        at kotlin.reflect.jvm.internal.ReflectKCallableImpl.getAbsentArguments(ReflectKCallableImpl.kt:15) ~[?:?]
        at kotlin.reflect.jvm.internal.ReflectKCallableKt.callDefaultMethod(ReflectKCallable.kt:133) ~[?:?]
        at kotlin.reflect.jvm.internal.ReflectKCallableImpl.default$callBy(ReflectKCallableImpl.kt:70) ~[?:?]
        at kotlin.reflect.jvm.internal.ReflectKCallableImpl.callBy(ReflectKCallableImpl.kt:10) ~[?:?]
        at kotlin.reflect.full.KCallables.callSuspendBy(KCallables.kt:79) ~[?:?]
        at org.incendo.cloud.kotlin.coroutines.annotations.KotlinAnnotatedMethodsKt$executeSuspendFunction$3.invokeSuspend(KotlinAnnotatedMethods.kt:316) ~[?:?]
        at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) ~[?:?]
        at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100) ~[?:?]
        at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:586) ~[?:?]
        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:829) ~[?:?]
        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:717) ~[?:?]
        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:704) ~[?:?]

Command declaration:

@Command("vnetwork trafficMonitor enable")
@ShortPerm("trafficMonitor")
fun enable(sender: User, @Flag("unit") unit: Unit = Unit.BIT) {
}

Kotlin compiler options:

    kotlin {
        compilerOptions {
            jvmTarget.value(JvmTarget.fromTarget(javaVer.toString())) // JavaVersion.VERSION_11
            // Remove Intrinsics checks
            freeCompilerArgs.add("-Xno-call-assertions")
            freeCompilerArgs.add("-Xno-receiver-assertions")
            freeCompilerArgs.add("-Xno-param-assertions")
        }
    }

This occurs on Kotlin 2.3.20 too, not a bug on Kotlin 2.3.10

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions