У меня есть проект Android, который я недавно обновил с помощью 1.1.3, и каждый раз при создании я получаю следующую ошибку:
Error:Execution failed for task ':app:compileDebugJavaWithJavac'.
> kotlin.jvm.internal.FunctionReference.<init>(ILjava/lang/Object;)V
Другие вопросы обычно говорят, что это означает, что stdlib не включен, но я определенно добавил его. Использование 1.1.2-5
работает, но 1.1.3
работал для других проектов.
Решение
Проблема заключалась в том, что я смешивал обработчик аннотации с kapt. Для проекты, такие как DbFlow и Glide, зависимость аннотациипроцессора может напрямую использовать с kapt.
Вернуться к исходному вопросу:
Здесь мой журнал Travis и ниже - мои зависимости:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.3-alpha', {
exclude group: 'com.android.support', module: 'support-annotations'
})
testCompile 'junit:junit:4.12'
compile("ca.allanwang:kau:${KAU}")
compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:${KOTLIN}"
testCompile "org.jetbrains.kotlin:kotlin-test-junit:${KOTLIN}"
debugCompile "com.squareup.leakcanary:leakcanary-android:${LEAK_CANARY}"
releaseTestCompile "com.squareup.leakcanary:leakcanary-android-no-op:${LEAK_CANARY}"
releaseCompile "com.squareup.leakcanary:leakcanary-android-no-op:${LEAK_CANARY}"
testCompile "com.squareup.leakcanary:leakcanary-android-no-op:${LEAK_CANARY}"
compile "com.github.Raizlabs.DBFlow:dbflow:${DBFLOW}"
compile "com.github.Raizlabs.DBFlow:dbflow-core:${DBFLOW}"
annotationProcessor "com.github.Raizlabs.DBFlow:dbflow-processor:${DBFLOW}"
kapt "com.github.Raizlabs.DBFlow:dbflow-processor:${DBFLOW}"
compile "com.github.Raizlabs.DBFlow:dbflow-kotlinextensions:${DBFLOW}"
//Icons
compile "com.mikepenz:material-design-iconic-typeface:${IICON_MATERIAL}@aar"
compile "com.mikepenz:community-material-typeface:${IICON_COMMUNITY}@aar"
compile "org.jsoup:jsoup:${JSOUP}"
compile "com.github.bumptech.glide:glide:${GLIDE}"
annotationProcessor "com.github.bumptech.glide:compiler:${GLIDE}"
compile("com.mikepenz:materialdrawer:${MATERIAL_DRAWER}@aar") {
transitive = true
}
compile "co.zsmb:materialdrawer-kt:${MATERIAL_DRAWER_KT}"
compile "nz.bradcampbell:paperparcel:${PAPER_PARCEL}"
compile "nz.bradcampbell:paperparcel-kotlin:${PAPER_PARCEL}"
kapt "nz.bradcampbell:paperparcel-compiler:${PAPER_PARCEL}"
compile "com.jude:swipebackhelper:${SWIPE_BACK}"
compile("com.crashlytics.sdk.android:crashlytics:${CRASHLYTICS}@aar") {
transitive = true;
}
}
Вот результат ошибки, когда я пытаюсь построить с полной stacktrace: [Удалено, потому что этот пост был слишком длинным] Я не уверен, что это помогает, но dbflow обычно имеет предупреждение о каждой сборке, так как ему не нужно генерировать классы каждый раз. Я отправил вопрос на их репо, но я не думаю, что это проблема, поскольку он отлично работает с 1.1.2-5
Изменить 2: я посмотрел на ./gradlew dependencies
, и все они показали kotlin 1.1.3 (слишком долго, чтобы публиковать здесь). Некоторые из них зависели от 1.1.0 от их источников github, но это не должно быть затронуто, и исключение этих std-libs не разрешило ошибку.
Правка 3: При попытке .gradlew app:dependencies | grep org.jetbrains.kotlin
я получаю следующее:
$ ./gradlew app:dependencies | grep org.jetbrains.kotlin
| | +--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.1 -> 1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3 -> 1.1.3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| \--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.2-3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
+--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3 -> 1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
+--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3 -> 1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
+--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3 -> 1.1.3 (*)
| | +--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.1 -> 1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3 -> 1.1.3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| \--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.2-3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
+--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3 -> 1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
+--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3 -> 1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
+--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3 -> 1.1.3 (*)
| | +--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.1 -> 1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3 -> 1.1.3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| \--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.2-3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
+--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3 -> 1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
+--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3 -> 1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
+--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3 -> 1.1.3 (*)
| | +--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.1 -> 1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3
| \--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.2-3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.0.4 -> 1.1.3 (*)
+--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| +--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3 -> 1.1.3 (*)
+--- org.jetbrains.kotlin:kotlin-annotation-processing:1.1.3
| \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| | +--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.1 -> 1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| \--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.2-3 (*)
+--- org.jetbrains.kotlin:kotlin-annotation-processing:1.1.3
| \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| | +--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.1 -> 1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| \--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.2-3 (*)
+--- org.jetbrains.kotlin:kotlin-annotation-processing:1.1.3
| \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| | +--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.1 -> 1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| \--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.2-3 (*)
+--- org.jetbrains.kotlin:kotlin-annotation-processing:1.1.3
| \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| | +--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.1 -> 1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| \--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.2-3 (*)
+--- org.jetbrains.kotlin:kotlin-annotation-processing:1.1.3
| \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| | +--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.1 -> 1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| \--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.2-3 (*)
+--- org.jetbrains.kotlin:kotlin-annotation-processing:1.1.3
| \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| | +--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.1 -> 1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| \--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.2-3 (*)
+--- org.jetbrains.kotlin:kotlin-annotation-processing:1.1.3
| \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| | +--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.1 -> 1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| \--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.2-3 (*)
+--- org.jetbrains.kotlin:kotlin-annotation-processing:1.1.3
| \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| | +--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.1 -> 1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| \--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.2-3 (*)
+--- org.jetbrains.kotlin:kotlin-annotation-processing:1.1.3
| \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.3
| | +--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.1 -> 1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib-jre7:1.1.2-3
| | | \--- org.jetbrains.kotlin:kotlin-stdlib:1.1.2-3 -> 1.1.3 (*)
| \--- org.jetbrains.kotlin:kotlin-stdlib-jre8:1.1.2-3 (*)