Kotlin&Gradle-确保您在类路径中有kotlin-reflect.jar

Roh*_*pta 7 intellij-idea gradle kotlin

我正在使用在IntelliJ IDEA IDE中使用Kotlin语言和Gradle Build的应用程序。我收到以下错误:

Exception in thread "main" kotlin.jvm.KotlinReflectionNotSupportedError: Kotlin reflection implementation is not found at runtime. Make sure you have kotlin-reflect.jar in the classpath
    at kotlin.jvm.internal.ClassReference.error(ClassReference.kt:86)
    at kotlin.jvm.internal.ClassReference.getQualifiedName(ClassReference.kt:26)
    at WorkerKt.main(Worker.kt:62)
Run Code Online (Sandbox Code Playgroud)

我已包含以下回答中提到的依赖项:在gradle中添加kotlin-reflect依赖项

即使我已将jar文件添加到libs文件夹中,但在运行时仍遇到上述错误。

我的Gradle文件如下:

group 'com.working.workerhelp'
version '1.0-SNAPSHOT'

buildscript {
    ext.kotlin_version = '1.2.21'

    repositories {
        mavenCentral()
    }
    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

apply plugin: 'kotlin'

repositories {
    mavenCentral()
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile "org.jetbrains.kotlin:kotlin-stdlib-jre8:$kotlin_version"
    compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
    testCompile "org.jetbrains.kotlin:kotlin-test:$kotlin_version"
}

compileKotlin {
    kotlinOptions.jvmTarget = "1.8"
}
compileTestKotlin {
    kotlinOptions.jvmTarget = "1.8"
}
Run Code Online (Sandbox Code Playgroud)

是否需要为Gradle Build配置某些功能,或者我缺少某些功能?

Aun*_*win 12

添加implementation "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"build.gradle(Module:app)

compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"从项目级别删除build.gradle

  • 使用 kotlin gradle DSL,假设你有 `plugins { kotlin("jvm") version "$kotlin_version" }` 那么你可以说 `dependencies { compile(kotlin("reflect")) }` (6认同)