我在尝试编写由服务器(Kotlin本机/ JVM)和客户端(Android)共享的代码时遇到困难
我同时拥有Android Studio和IntelliJ IDEA。 我希望能够编写Kotlin代码,这些代码可以从我的Android项目中使用,也可以独立使用(不确定JVM还是Native)。 IntelliJ在项目设置中有很多不错的多平台选项,但我无法从Android Studio中构建它们。
Kotlin共享项目具有此插件
plugins {
id 'kotlin-multiplatform' version '1.3.11'
}
并且构建良好-即我可以从IntelliJ运行它,一切都很好。
但是如何将其导入Android Studio。我进行了以下更改
settings.gradle
include ':app', ':shared'
project(':shared').projectDir = new File('../../kotlin/shared')
很明显,它试图从正确的文件中进行构建,但是gradle同步立即失败,并显示以下消息:
找不到插件[id:'kotlin-multiplatform',版本:'1.3.11'] 通过以下任何一种来源:
- Gradle核心插件(不是核心插件,请参阅https://docs.gradle.org/4.4/userguide/standard_plugins.html) 可用的核心插件)
- 插件存储库(无法解析插件工件'kotlin-multiplatform:kotlin-multiplatform.gradle.plugin:1.3.11')
在以下存储库中搜索: Gradle中央插件存储库
我认为这将是存储库问题,但是两个项目(共享库和Android项目)仅具有mavenCentral。
所以我很困惑。如何为Android和JVM / Native构建相同的代码?
答案 0 :(得分:1)
您在Gradle构建中使用了错误的插件ID。试试
plugins {
id 'org.jetbrains.kotlin.multiplatform' version '1.3.21'
}
相反。
iOS和Android应用程序教程看起来很相关https://kotlinlang.org/docs/tutorials/native/mpp-ios-android.html
您可以查看MPP库教程https://kotlinlang.org/docs/tutorials/multiplatform-library.html
上找到Kotlin MPP插件的文档。