androidandroid-studiokotlingradleandroid-gradle-plugin

Unable to find method ''java.io.File > org.jetbrains.kotlin.gradle.tasks.KotlinCompile.getDestinationDir()


I have problem with updating Kotlin version in existing project.

Current Gradle:

com.android.tools.build:gradle:7.0.1

Current Kotlin:

org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.30

When I'm changing Kotlin version to

org.jetbrains.kotlin:kotlin-gradle-plugin:1.7.20

I'm getting error:

> Unable to find method ''java.io.File
> org.jetbrains.kotlin.gradle.tasks.KotlinCompile.getDestinationDir()''
> 'java.io.File
> org.jetbrains.kotlin.gradle.tasks.KotlinCompile.getDestinationDir()'
> 
> Gradle's dependency cache may be corrupt (this sometimes occurs after
> a network connection timeout.)
> 
> Re-download dependencies and sync project (requires network) The state
> of a Gradle build process (daemon) may be corrupt. Stopping all Gradle
> daemons may solve this problem.
> 
> Stop Gradle build processes (requires restart) Your project may be
> using a third-party plugin which is not compatible with the other
> plugins in the project or the version of Gradle requested by the
> project.
> 
> In the case of corrupt Gradle processes, you can also try closing the
> IDE and then killing all Java processes.

I was trying to:

Update 1.

Updated all dependencies but still can't change Kotlin version.

How I can solve this problem ?


Solution

  • OK. I will write what helped me and it maybe would be helpful for someone in the future.

    In this case there was problem with kotlin compatibility version in gradle libraries.

    Run build with --stacktrace

    ./gradlew assembleDebug --stacktrace
    

    and there was error not visible without --stacktrace.

    Caused by: java.lang.NoSuchMethodError: org/jetbrains/kotlin/gradle/tasks/KotlinCompile.getDestinationDir()Ljava/io/File; (loaded from file:/C:/Users/user/.gradle/caches/jars-9/d2eb7478e0f9b31ee9b2ffc619a8e9b4/kotlin-gradle-plugin-1
    .7.20-gradle71.jar by VisitableURLClassLoader(ClassLoaderScopeIdentifier.Id{coreAndPlugins:settings[:]:buildSrc[:]:root-project[:](export)})) called from class de.mannodermaus.gradle.plugins.junit5.providers.KotlinDirectoryProvider 
    (loaded from file:/C:/Users/user/.gradle/caches/jars-9/4ae406a23e7d8b323fd6eec4907799d4/android-junit5-1.7.0.0.jar by VisitableURLClassLoader(ClassLoaderScopeIdentifier.Id{coreAndPlugins:settings[:]:buildSrc[:]:root-project[:](export)})).
    

    After updating this library I was able to bump kotlin version.