Невозможно разрешить зависимость для: Не удалось разрешить org.jetbrains.kotlinx: kotlinx-serialization-runtime-native: 0.8.1-rc13 - PullRequest
0 голосов
/ 28 сентября 2018

Я получаю ошибку сборки Gradle для неразрешенных зависимостей в примере проекта Kotlin / Native.

Не удалось разрешить: org.jetbrains.kotlinx: kotlinx-serialization-runtime-native: 0.8.1-rc13

мой build.gradle (общий модуль) выглядит как

apply plugin: 'kotlin-platform-common'
apply plugin: 'kotlinx-serialization'
repositories {
mavenCentral()
maven { url "https://kotlin.bintray.com/kotlinx" }
jcenter{ url "https://jitpack.io" }
jcenter()
maven { url "https://dl.bintray.com/jetbrains/kotlin-native-dependencies" }
maven { url "http://kotlin.bintray.com/kotlin-dev" }
maven { url "https://dl.bintray.com/kotlin/kotlin-eap" }
maven { url "https://dl.bintray.com/sandwwraith/libs-preview/"}
mavenLocal()

}

dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-common:$kotlin_version"
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
implementation "org.jetbrains.kotlinx:kotlinx-serialization-runtime-native:$serialization_version"

}

Build.gradle (уровень платформы-android)

apply plugin: 'com.android.application'
apply plugin: 'kotlin-platform-android'
android {
compileSdkVersion 27
defaultConfig {
    applicationId "com.phonepe.mykotlinnativesample"
    minSdkVersion 15
    targetSdkVersion 27
    versionCode 2
    versionName "2.0"
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}

def butterknife_version = '8.8.1'
repositories{
    mavenCentral()
    maven { url "https://kotlin.bintray.com/kotlinx" }
    jcenter{ url "https://jitpack.io" }
    jcenter()
    maven { url "https://dl.bintray.com/jetbrains/kotlin-native-dependencies" }
    maven { url "http://kotlin.bintray.com/kotlin-dev" }
    maven { url "https://dl.bintray.com/kotlin/kotlin-eap" }
    maven { url "https://dl.bintray.com/sandwwraith/libs-preview/"}
    mavenLocal()
}
dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.android.support:recyclerview-v7:27.1.1'
    implementation 'com.android.support.constraint:constraint-layout:1.1.2'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation "com.jakewharton:butterknife:$butterknife_version"
implementation 'com.squareup.picasso:picasso:2.71828'
implementation 'com.google.dagger:dagger-android:2.16'
implementation 'com.google.dagger:dagger-android-support:2.16' // if you use the support libraries
kapt 'com.google.dagger:dagger-android-processor:2.16'
kapt 'com.google.dagger:dagger-compiler:2.16'
implementation 'com.android.support:exifinterface:27.1.1'
expectedBy project(":common")

}

Уровень проекта Build.gradle выглядит следующим образом:

apply plugin: 'kotlinx-serialization'
buildscript {
    ext.kotlin_version = '1.3.0-rc-131'
    ext.serialization_version = '0.8.1-rc13'
    ext.serializationRepo = "https://dl.bintray.com/kotlin/kotlinx/"
    ext.serialization_plugin_version="1.3.0-rc-131"
repositories {
    google()
    jcenter()
    maven {
        url "https://dl.bintray.com/jetbrains/kotlin-native-dependencies"
    }
    maven { url "https://kotlin.bintray.com/kotlinx" }
    maven { url "https://dl.bintray.com/kotlin/kotlin-eap" }
    maven { url "http://kotlin.bintray.com/kotlin-dev" }
    maven { url "https://plugins.gradle.org/m2/" }
    maven { url "https://dl.bintray.com/sandwwraith/libs-preview/"}
    mavenLocal()
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.1.4'
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    classpath "org.jetbrains.kotlin:kotlin-native-gradle-plugin:0.9.2"
    classpath "org.jetbrains.kotlin:kotlin-serialization:$serialization_plugin_version"
      }
}

allprojects {
    repositories {
    google()
    jcenter()
    maven {
        url "https://dl.bintray.com/jetbrains/kotlin-native-dependencies"
    }
    maven { url "https://kotlin.bintray.com/kotlinx" }
    maven { url "https://dl.bintray.com/kotlin/kotlin-eap" }
    maven { url "http://kotlin.bintray.com/kotlin-dev" }
    maven { url "https://dl.bintray.com/sandwwraith/libs-preview/"}
    mavenLocal()
}
}
repositories {
    google()
    jcenter()
    maven {
    url "https://dl.bintray.com/jetbrains/kotlin-native-dependencies"
    }
    maven { url "https://kotlin.bintray.com/kotlinx" }
    maven { url "https://dl.bintray.com/kotlin/kotlin-eap" }
    maven { url "http://kotlin.bintray.com/kotlin-dev" }
    maven { url "https://dl.bintray.com/sandwwraith/libs-preview/"}
    mavenLocal()
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

settings.gradle ::

include ':android', ':common', ':myapplication'
enableFeaturePreview('GRADLE_METADATA')

Какие правильные версии и репозитории я могу использовать, чтобы бытьв состоянии использовать сериализацию?

1 Ответ

0 голосов
/ 30 сентября 2018

Установка, которую вы подключили, довольно странная, потому что вы применяете плагин Kotlin / Native 'konan' к тому же модулю, что и плагин 'kotlin-platform-common'.Прежде всего, konan устарел и заменен на kotlin-platform-native.Во-вторых, эти плагины должны применяться к разным модулям Gradle, см. справочник по многоплатформенности kotlin .

Что касается сериализации, то теперь он поставляется в двух вариантах: один, для Kotlin 1.2 имеет номера версий 0.6.x(0.6.2 для 1.2.70) и не поддерживает Kotlin / Native;вместо этого предоставляется только отдельный json parser .Второй вариант, для Kotlin 1.3 находится в стадии разработки и имеет номер 0.8.x-rc13 (последний - 0.8.1-rc13 для Kotlin / Native 0.9.2), и он содержит поддержку K / N в отдельном артефакте с координатами "kotlinx-сериализация-среда родной».Сериализация документов для предварительного просмотра Kotlin 1.3 показывает больше информации: https://github.com/Kotlin/kotlinx.serialization/blob/master/docs/eap13.md.

Существует также выделенный пример настройки , который содержит готовую к использованию заглушку многоплатформенного проекта с сериализацией.Ветвь native_preview использует вышеупомянутый Kotlin 1.3-rc, K / N 0.9.2 и сериализацию 0.8.1.

...