Podczas kompilacji otrzymałem powyższy błąd. Mój plik gradle, jak poniżej: -
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
android {
compileSdkVersion 23
buildToolsVersion "24.0.0 rc2"
defaultConfig {
applicationId "package.name"
minSdkVersion 16
targetSdkVersion 23
versionCode 6
versionName "2.0"
}
buildTypes {
debug {
minifyEnabled false
signingConfig signingConfigs.debug
}
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
}
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile "com.android.support:appcompat-v7:$support_version"
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
compile "org.jetbrains.anko:anko-sdk15:$anko_version"
compile "org.jetbrains.anko:anko-support-v4:$anko_version"
compile "com.android.support:recyclerview-v7:$support_version"
}
buildscript {
ext.kotlin_version = '1.0.1-2'
repositories {
jcenter()
mavenCentral()
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
}
}
repositories {
mavenCentral()
}
A mój projekt został oceniony jak poniżej
buildscript {
ext.support_version = '23.2.1'
ext.kotlin_version = '1.0.1'
ext.anko_version = '0.8.3'
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.1.0-alpha3'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Czy przegapiłem coś dodania?
compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version" testCompile "org.jetbrains.kotlin:kotlin-test:$kotlin_version"
zgodnie z kotlinlang.org/docs/reference/using-gradle.htmlhttps://jcenter.bintray.com/org/jetbrains/kotlin/kotlin-reflect//kotlin-reflect-.jar
. Tak więc nadal używam przepisu w tej odpowiedzi.implementation
jest to teraz preferowana dyrektywa odcompile
:implementation "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
U mnie problem polegał na tym, że nie miałem tych samych wersji kotlin Jestem moimi modułami i biblioteką, więc musiałem zmusić je do korzystania z tej samej wersji
configurations.all { resolutionStrategy { eachDependency { DependencyResolveDetails details -> if (details.requested.group == 'org.jetbrains.kotlin') { details.useVersion versions.kotlin } } }}
źródło
Rozwiązałem to, dodając to w pliku build.gradle
implementation "org.jetbrains.kotlin:kotlin-reflect:1.3.61"
źródło