40

迁移到 AndroidX 后一直面临此错误。

java.lang.IllegalStateException: SimpleTypeImpl should not be created for error type: ErrorScope{Error scope for class <ERROR CLASS> with arguments: org.jetbrains.kotlin.types.IndexedParametersSubstitution@14ac19e7}

这个链接没有多大帮助

4

7 回答 7

34

对我来说,错误是由于import声明无效而出现的。Android Studio 没有显示任何相关内容。我不得不去每个文件,然后工作室显示无效的导入错误。修复它并且构建错误消失了。

于 2019-04-05T04:44:17.540 回答
18

我更新到Kotlin 1.3.20但它仍然没有工作。然后我决定检查Kotlin源代码。我找到了这个链接

我有一个调用接口DisplayItem<T>,我删除了它的类型参数。在此之后,我开始收到错误。实际上,在logcat它的错误末尾说DisplayItem

所以我检查DisplayItem了代码中的所有类型,我发现我忘记删除变量中的一个类型参数,LiveData如下所示:

MediatorLiveData<DataHolder<List<DisplayItem<MessageViewEntity>>>>

从变量中删除类型参数后,它开始编译。我希望这会对你有所帮助。

注意:您可以git grep用于快速搜索。

于 2019-02-12T08:51:01.287 回答
8

我解决此问题的主要提示是,当您收到错误消息却不知道真正的错误在哪里时,请尝试使用 Android Studio 分析/检查代码选项。通过挖掘输出,我发现了触发问题的实际编译错误,然后可以轻松修复它们。

在我的案例中,实际问题是当将具有嵌套类的泛型类更改为抽象类并创建两个子类来替换它以前的用法时。我仍然有我的代码对原始抽象基类的引用,我应该用两个新的子类之一替换它们。

于 2019-06-06T09:41:06.897 回答
4

Android Studio 中的迁移到 AndroidX 选项并没有太大帮助。我通过手动更改每个文件解决了这个错误,在代码和 xml 中都根据 AndroidX 更改了包名称。如果任何文件未更改,您将看到此错误。请确保您的 Kotlin 插件版本、gradle 插件版本、构建工具和 Android Studio 版本是最新的。

于 2019-02-25T07:29:49.047 回答
4

我做了以下步骤来解决这个问题。

1-将 android studio 从 4.1.1 更新到 4.2.1

2-更新 gradle-warepper.properties 文件中的以下行

distributionUrl=https\://services.gradle.org/distributions/gradle-6.9-all.zip

3- 更新一些 kotlin 扩展,如下所示

buildscript {
    ext.kotlin_version = '1.3.72'

buildscript {
    ext.kotlin_version = '1.4.32'

 dependencies {
        classpath 'com.android.tools.build:gradle:4.0.1'

dependencies {
        classpath 'com.android.tools.build:gradle:4.2.1'

gradle 同步等需要一些时间,但最终对我来说,在一整天后解决了这个问题。

于 2021-06-03T16:00:59.740 回答
2

我刚刚kotlin-gradle-plugin在 root 中更新了我的版本build.gradle,它解决了我的问题

classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.72"

classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.32"
于 2022-01-20T07:08:32.557 回答
-1

将您的 Kotlin 依赖项升级到 1.3.20,编译器将突出显示问题的根源。

于 2019-01-24T14:07:17.397 回答