Ошибка автозаполнения Intellij на зависимостях многоплатформенных библиотек - PullRequest
0 голосов
/ 14 января 2020

Я создал мультиплатформенную библиотеку, которую я использую в другом мультиплатформенном проекте. После включения зависимости я могу использовать библиотеки в commonMain без проблем, и все цели создаются без ошибок. Тем не менее, intellij autocomplete не знает о моих новых типах. Я сделал недействительными кэши и перезапустил приложение много раз, но оно просто не может найти этот тип. Кто-нибудь сталкивался с этим?

Intellij reports errors

but gradle shows success

на всякий случай, вот мой build.gradle .kts:

import org.jetbrains.kotlin.gradle.targets.js.webpack.KotlinWebpack

buildscript {
    repositories {
        jcenter()
    }
}

plugins {
    kotlin("multiplatform") version "1.3.61"
}

repositories {
    jcenter()
    maven(  "https://dl.bintray.com/kotlin/ktor" )
    mavenCentral()
    mavenLocal()
}

val ktor_version = "1.1.3"
val logback_version = "1.2.3"

kotlin {
    js {
        browser {  }
    }
    jvm {
        compilations.named("main") {
            tasks.getByName<Copy>(processResourcesTaskName) {
                dependsOn("jsBrowserWebpack")
                tasks.named<KotlinWebpack>("jsBrowserWebpack") {
                    from(entry.name, destinationDirectory)
                }
            }
        }
    }

    sourceSets {
        val commonMain by getting {
            dependencies {
                implementation(kotlin("stdlib-common"))
                api("github.fatalcatharsis:constraint:1.0-SNAPSHOT")
            }
        }

        val commonTest by getting {
            dependencies {
                implementation(kotlin("test-common"))
                implementation(kotlin("test-annotations-common"))
            }
        }

        val jvmMain by getting {
            dependencies {
                implementation( kotlin("stdlib-jdk8"))
                implementation( "io.ktor:ktor-server-netty:$ktor_version")
                implementation( "io.ktor:ktor-html-builder:$ktor_version")
                implementation( "ch.qos.logback:logback-classic:$logback_version")
            }
        }

        val jvmTest by getting {
            dependencies {
                implementation(kotlin("test"))
                implementation(kotlin("test-testng"))
            }
        }

        val jsMain by getting {
            dependencies {
                implementation( kotlin("stdlib-js"))
            }
        }

        val jsTest by getting {
            dependencies {
                implementation( kotlin("test-js"))
            }
        }
    }
}

tasks.register<JavaExec>("run") {
    dependsOn("jvmJar")
    group = "application"
    main = "sample.SampleJvmKt"
    val t = tasks.named<Jar>("jvmJar")

    classpath(configurations.named("jvmRuntimeClasspath"), t.get() )
}
...