无法在kotlin multiplatform mobile中导入依赖项

无法在kotlin multiplatform mobile中导入依赖项,kotlin,ktor,kotlin-multiplatform-mobile,Kotlin,Ktor,Kotlin Multiplatform Mobile,我创建了一个新的kotlin多平台移动项目。我遵循官方文件。 基本项目正在运行,我能够在安卓上毫无问题地构建它 我想添加一些api,发现了我以前从未使用过的ktor。我遵循了这里的文档:和这里的教程:我所做的所有更改是: 我将ktor库添加到build.gradle.kts(:shared): 我创建了Api类,我想在其中创建和使用HttpClient: class Api() { private val client = HttpClient() suspend fun fe

我创建了一个新的kotlin多平台移动项目。我遵循官方文件。 基本项目正在运行,我能够在安卓上毫无问题地构建它

我想添加一些api,发现了我以前从未使用过的
ktor
。我遵循了这里的文档:和这里的教程:我所做的所有更改是:

我将
ktor
库添加到
build.gradle.kts(:shared)

我创建了
Api
类,我想在其中创建和使用
HttpClient

class Api() {
    private val client = HttpClient()

    suspend fun fetch(): String {
        return ""
    }
}
但是
HttpCLient()
是“未解析引用”,无法导入。我还尝试手动添加import
io.ktor.client.HttpClient

但是
io
是“未解析的引用”。 我还尝试了多次重建/清理/同步。
我做错了什么?我遗漏了什么吗?

使用IntelliJ IDEA Ultimate 2020.3,我从文件->新建…->项目创建了一个KMM项目。然后,我添加了ktor作为依赖项,正如您在问题中包含的代码中所做的那样。当创建一个与您类似的
ApiClient
类时,它在
androidMain
以及
commonMain
源集中对我都有效,IDEA会自动导入
HttpClient

因此,由于我无法再现这一点,我担心如果不知道您正在运行的确切代码,我将很难帮助您


不过,为了以防万一,我将我的最小项目放在Github()上,也许你可以在那里找到提示。

我在windows 7上遇到了与Android Studio 4.1.3相同的问题。当在项目的构建脚本中,在构建脚本的依赖项部分,将kotlin gradle插件工件的版本从1.4.10更新到1.4.32时,问题就解决了。以下是project build.gradle.kts的副本粘贴:

buildscript {
    repositories {
        gradlePluginPortal()
        jcenter()
        google()
        mavenCentral()
    }
    dependencies {
        classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.32")
        classpath("com.android.tools.build:gradle:4.1.3")
    }
}

我在1.5.1中也遇到了同样的问题,您是否发现了问题所在?使用1.4.2版似乎可行,但我怀疑这是否是实际的解决方案?我假设您在说“未解决的引用”时提到了IDE?我刚刚在插件
kotlin(“多平台”)版本“1.4.21”
ktor:1.5.0
(也是
1.5.1
,但只在
commonMain
中尝试了相同的方法,而且刚刚在
commonMain
中添加了代码),它能够解决这个问题。。。然而,我正在使用Intellij IDEA Ultimate 2021.1 EAP。。。也许有什么事被解决了?;-)我知道我以前在Intellij上遇到过这样的问题,不仅是在多平台上,而且我忘记了我是如何解决的:-)现在它工作了:-我面临着同样的问题。你找到解决办法了吗?
buildscript {
    repositories {
        gradlePluginPortal()
        jcenter()
        google()
        mavenCentral()
    }
    dependencies {
        classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.32")
        classpath("com.android.tools.build:gradle:4.1.3")
    }
}