错误:无法访问 KObject -- 找不到 kotlin.jvm.internal.KObject 的类文件



我正在尝试将 Kotlin 与现有的 Java 应用程序集成。 因此,为了测试它,我创建了一个简单的 kotlin 文件和一个单元测试(在 java 中),这将做一些简单的事情。 单元测试的目的是确保所有配置都是正确的,事实上我可以从 java 调用 kotlin 类。

这就是我有点卡住的地方,在使用 gradle 执行构建时,我收到以下错误:

[ERROR] [system.err] Sample.class: warning: Cannot find annotation method 'name()' in type 'JetValueParameter'
[ERROR] [system.err] SampleTest.java:19: error: cannot access KObject
[ERROR] [system.err]         sample.setStatusCode(Sample.Status.OK);
[ERROR] [system.err]                                        ^
[ERROR] [system.err]   class file for kotlin.jvm.internal.KObject not found
[ERROR] [system.err] 1 error
[ERROR] [system.err] 24 warnings

我在类路径上有 kotlin 运行时,我还添加了 kotlin-jdk 注释,只是为了更好地衡量。 我还在 gradle 中配置了 kotlin 插件。

我的头撞在砖墙上,这太可惜了,因为我喜欢 kotlin 作为 java 的替代品。 但是,这个问题可能会破坏我的计划。

任何帮助将不胜感激!!

更新:

Gradle 构建脚本:

apply plugin: 'java'
apply plugin: 'kotlin'
sourceCompatibility = 1.7
version = '1.0'
repositories {
    mavenCentral()
}
dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.11'
    compile "org.jetbrains.kotlin:kotlin-stdlib:0.9.976"
}
buildscript {
    ext.kotlin_version = '0.9.976'
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:0.9.976"
        classpath 'org.jetbrains.kotlin:kotlin-stdlib:0.9.976'
    }
}

Java版本:1.7.xKotlin 版本:0.9.976格拉德尔版本:1.6

我想出了这个问题,因为我们使用的是复杂的 gradle 设置(它正在加载其他 5 个脚本;(),gradle 脚本没有将 kotlin 运行时添加到路径中。 一旦我修复了它似乎有效。

最新更新