gpt4 book ai didi

android - 项目不会使用 Kotlin 1.1.3 构建

转载 作者:IT老高 更新时间:2023-10-28 13:32:10 25 4
gpt4 key购买 nike

我最近使用 1.1.3 更新了一个 Android 项目,每次构建时都会收到以下错误:

Error:Execution failed for task ':app:compileDebugJavaWithJavac'.
> kotlin.jvm.internal.FunctionReference.<init>(ILjava/lang/Object;)V

其他问题通常说这意味着没有包含stdlib,但我肯定添加了它。使用 1.1.2-5 是可行的,而 1.1.3 也适用于其他项目。

解决方案

The issue was with me mixing the annotation processor with kapt. For projects like DbFlow and Glide, the annotationProcessor dependency can be directly used with kapt.

回到原来的问题:

Here是我的 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;
}
}

这是我尝试使用完整堆栈跟踪构建时的错误输出:[已删除,因为这篇文章太长]我不确定它是否有帮助,但 dbflow 通常在每次构建时都会发出警告,因为它不需要每次都生成类。我已经向他们的仓库发送了一个问题,但我认为这不是问题,因为它适用于 1.1.2-5

编辑 2:我查看了 ./gradlew dependencies,所有这些都显示 kotlin 1.1.3(太长,无法在此处发布)。有一些依赖于 1.1.0 来自他们的 github 源,但这不应该受到影响,并且排除那些 std-lib 并不能解决错误。

编辑 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 (*)

最佳答案

根据我的经验,您:

  1. 不应混用 kaptannotationProcessor
  2. 使用 kapt3,通过使用 apply plugin: 'kotlin-kapt'
  3. 不要使用 kapt { generateStubs true } }(kapt3 不允许使用)

还要检查您的 Kotlin 插件和 Gradle 插件是否是最新的。
此外,我通常不使用标准库的 jre7 版本,但我怀疑这是这里的问题。

这里有一个更详尽的“使用 Kotlin 的东西不起作用”的列表:https://gist.github.com/lmller/3c43eff454f7508474210fb2491b488a

关于android - 项目不会使用 Kotlin 1.1.3 构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44769417/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com