java.lang.IllegalStateException: SimpleTypeImpl should not be created for error type

Viewed 13798

Have been facing this error after migrating to 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}

This link does not help much

7 Answers

For me, the error was appearing due to invalid import statement. Android Studio didn't show anything regarding the same. I had to go to every single file, then studio shown the invalid import error. Fixed it and the build error's gone.

I updated to Kotlin 1.3.20 but it still did not work. Then I decided to check the Kotlin source code. I found this link

I had an interface called DisplayItem<T> and I removed its type parameter. After this, I started to get the error. Actually, at the end of the error in logcat it says DisplayItem

So i checked all DisplayItem types in code and I found I forgat to remove one type parameter in a LiveData variable like the follwoing:

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

After removing type parameter from the variable it started to compile. I hope this'll help you.

Note: You can use git grep for a quick search.

My main tip to solve this issue would be when you're just getting the error message with no clue where the real error is, try the Android studio Analyze/Inspect code option. Digging through the output from this I found the actual compile errors that were triggering the problem and then could easily fix them.

The actual problem in my case was when changing a generic class, that had a nested class, into an abstract class and creating two sub-classes to replace it's previous usage. I still had references my code to the original abstract base class where I should have replaced them with one of the two new sub-classes.

Migrate to AndroidX option in Android Studio didn't help much. I solved this error by making changes in every file manually, changed the package names according to AndroidX in both code and xml. If any file is left unchanged, you will see this error. Please make sure your Kotlin plugin version, gradle plugin version, build tools and Android studio version is up to date.

I did following steps to solve the issue.

1-Updated android studio from 4.1.1 to 4.2.1

2-Update below line in gradle-warepper.properties file

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

3- Update some kotlin extentions like below

buildscript {
    ext.kotlin_version = '1.3.72'

to

buildscript {
    ext.kotlin_version = '1.4.32'

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

to

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

It will take some time for gradle sync etc but finnaly for me solved the problem after waisting whole day.

I just updated my kotlin-gradle-plugin version in root build.gradle and it resolved my issue

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

to

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

Upgrade your Kotlin dependency to 1.3.20 and the compiler will highlight the source of your issues.

Related