Ожидаемый класс не имеет фактического объявления - PullRequest
0 голосов
/ 23 февраля 2019

Я делаю мультиплатформенный проект.

Часть моего файла gradle выглядит следующим образом

...
kotlin {
    jvm()
    jvm("api")
    js()
    mingwX64("mingw")
    sourceSets {
        ...
        val jvmMain by getting {
            dependencies {
                implementation ("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
            }
        }
        val jvmTest by getting {
            dependencies {
                implementation ("org.jetbrains.kotlin:kotlin-test")
                implementation ("org.jetbrains.kotlin:kotlin-test-junit")
            }
        }
        val apiMain by getting {
            dependencies {
                dependsOn(jvmMain)
            }
        }
        val jsMain by getting {
            dependencies {
                implementation ("org.jetbrains.kotlin:kotlin-stdlib-js")
            }
        }
        ...
    }
}

Теперь в источниках commonsMain я получаю ошибку IDE (красное подчеркивание), которая говорит«ожидаемый класс Sample не имеет фактического объявления в apiMain», но apiMain зависит от jvmMain, у которого есть фактическое объявление.

Я не думаю, что мне нужно фактическое объявление в apiMain, так как у меня уже есть такое в jvm.

Должен ли я использовать другой подход при настройке исходных наборов?

В любом случае, проект компилируется нормально, и я могу запустить apiMain, но ошибка IDE меня действительно раздражает.

1 Ответ

0 голосов
/ 23 февраля 2019

Это известная ошибка IDE.Смотри билет YouTrack здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...