Как настроить таргетинг на JVM / Native и Android с помощью Kotlin - PullRequest
0 голосов
/ 09 февраля 2019

Я застрял, пытаясь написать код, общий для сервера (Kotlin native / 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 Core (не основной плагин, см. https://docs.gradle.org/4.4/userguide/standard_plugins.html для доступных основных плагинов)
  • Репозитории плагинов (не удалось разрешить артефакт плагина 'kotlin-multiplatform: kotlin-multiplatform.gradle.plugin: 1.3.11')
    Поиск производился в следующих репозиториях: Gradle Central Plugin Repository

Я предполагаю, что это будет проблема с репозиторием, но оба проекта (общая библиотека и проект Android) имеют только mavenCentral.

Так что я сбит с толку.Как создать один и тот же код для Android и JVM / Native?

1 Ответ

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

Вы используете неправильный идентификатор плагина в вашей сборке Gradle.Попробуйте

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 здесь https://kotlinlang.org/docs/reference/building-mpp-with-gradle.html#publishing-a-multiplatform-library

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