当前位置:  开发笔记 > Android > 正文

Kotlin Foo :: class.java"未解决的参考:Java"错误

如何解决《KotlinFoo::class.java"未解决的参考:Java"错误》经验,为你挑选了3个好方法。

我正在尝试将我的Java代码转换HomePage.class为Kotlin.我按照Kotlin.org上的说明操作:

的getClass()

要从对象检索类型信息,我们使用javaClass扩展属性.

val fooClass = foo.javaClass

而不是Java的Foo.class使用 Foo::class.java.

val fooClass = Foo::class.java

我有一个名为HomePage的类,它扩展了AppCompatActivity(在Android中).我正在使用Android Studio.我试过了HomePage::class.java,它有一个错误:Unresolved reference: java

在此输入图像描述

我如何让它工作?



1> mhlz..:

问题很可能是你忘了依赖Kotlin反射功能所需的反射库.

在Java平台上,使用反射功能所需的运行时组件作为单独的JAR文件(kotlin-reflect.jar)分发.这样做是为了减少不使用反射功能的应用程序所需的运行时库大小.如果使用反射,请确保将.jar文件添加到项目的类路径中.

资源



2> Rock Lee..:

事实证明,我使用的是较旧版本的Kotlin,但配置不正确.我编辑了gradle文件以包含最新的beta版本,并选择了配置Kotlin的选项,现在它可以使用了.

在gradle中:

buildscript {
    ext.kotlin_version = '1.0.0-beta-3594'
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
    }
}
...

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



3> Ronaldo Albe..:

我放在Gradle的开头(模块应用程序)

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'

implementation "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"

在依赖项部分

在build.gradle(Project)中

implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"

推荐阅读
勤奋的瞌睡猪_715
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有