繁体   English   中英

如何避免由于 Kotlin 构建错误而重新启动 Android Studio:无法解析以下类的超类型

[英]How do I avoid restarting Android Studio because of a Kotlin build error: Supertypes of the following classes cannot be resolved

我有一个用 Java 编写的 Android 应用程序,现在正在第一次尝试 Kotlin。 我使用 Kotlin 创建了一个新活动,应该通过“startActivityforResult”从 Java 代码中调用它。 IDE(可能是 Kotlin 插件?)自动将所有必需的东西添加到 gradle 构建文件中。 新活动使用主活动中的键来识别和枚举参数和返回值。 当我尝试使用 Android Gradle 插件 v3.3.1 和 Kotlin 1.3.20 在 Android Studio 3.3.1 中构建此应用程序时,否。

通常这会导致错误:无法解析以下类的超类型。 请确保您在类路径中具有所需的依赖项...

列出的类有 2 个我自己的类(因此依赖关系没有问题),两种情况下的超类型是相同的,即一个 Java 接口

interface AllDataLoadedListener {
    void allDataLoaded();
}

与其他接口定义一起位于名为 DatabaseInterfaces.java 的文件中。

按照此处的建议使缓存无效并重新启动 Android Studio 会有所帮助(并非总是但主要是),但是在每次更改代码之后这一步显然是必要的,这会很快变得烦人。

根本问题是什么,如何避免和/或解决这个问题?

事实证明,虽然在一个文件中声明多个接口是不受欢迎的,但 Java 编译器仍然允许这样做,但 Kotlin 编译器目前不允许。 将接口文件拆分成文件,每个文件都有一个(1 行)接口,它们各自的类型名称也作为文件名。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM