square / anvil

A Kotlin compiler plugin to make dependency injection with Dagger 2 easier.
Apache License 2.0
1.29k stars 75 forks source link

Kotlin 2.0.0-RC1 Gradle plugin incompatibility #960

Closed gabrielittner closed 2 months ago

gabrielittner commented 2 months ago

When using Kotlin 2.0.0-RC1 with useKsp it will fail with:

java.lang.NoClassDefFoundError: org/jetbrains/kotlin/gradle/plugin/mpp/pm20/util/TargetsKt
        at com.squareup.anvil.plugin.AnvilExtension$useKsp$willHaveDaggerFactories$1.invoke(AnvilExtension.kt:205)
        at com.squareup.anvil.plugin.AnvilExtension$useKsp$willHaveDaggerFactories$1.invoke(AnvilExtension.kt:202)
        at com.squareup.anvil.plugin.AnvilExtension.useKsp$lambda$4(AnvilExtension.kt:202)

The used targets extension method still exists in but the file name changed which leads to the NoClassDefFoundError. Since it's deprecated now and since the replacement is internal it's probably best to just directly replace it

gabrielittner commented 2 months ago

Fixed by #961