每次对kotlin文件的更改都会导致生成时的Redeclaration错误。唯一的解决办法是清理项目,然后再进行重建。项目中没有与我正在编辑的文件同名的其他文件。
我试过:
当前构建使用的是:
org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.21
com.android.tools.build:gradle:3.2.0将导致错误的示例代码。如果我不使用addedThisLine进行构建,它将作为第一个构建来工作。然后,当我在任何情况下编辑文件时,都会导致下面的错误。
package beagle.com
class ErrorFragment {
val hello = "Hello"
init {
var goodbye = "goodbye"
var addedThisLine = "When this line is added I get error"
}
}我犯了错误

这发生在我的项目中的每个kotlin文件中,我上面发布的代码是最基本的文件。如您所见,它指向错误的类名。
发布于 2020-03-15 07:23:38
只需清理项目并重新构建项目即可。
发布于 2019-07-29 02:51:01
TL;DR:检查您的目录与它们在settings.gradle中显示的名称完全相同。
值得一提的是: MacOS并不总是区分大小写,这可能导致奇怪的问题。
我想我找到了一个解决方案:区分大小写的东西。
在我的例子中,我使用模块,让我们只调用模块:moduleA,moduleB
在settings.gradle中,我有:include ':ModuleA', 'moduleB',但是文件系统级别的目录是:moduleA/和moduleB/
这似乎很奇怪,不应该工作,但第一次运行总是有效的,然后下一个将失败,直到项目清理。
我决定保持一致,并将目录重命名为settings.gradle列出的目录,即使在AndroidStudio中它们以settings.gradle中列出的名称出现。这也有助于清理事情,因为git在.git/config下有一个配置,它声明忽略区分大小写的内容。
因此,检查您的目录的情况和它们是如何在settings.gradle中列出的。
在用gradle重命名和清洁之后,一切都像以前一样工作。
发布于 2020-06-10 16:23:52
然后升级kotlin和gradle版本
试着Run这可能会有帮助
./gradlew clean
rm -rf ~/.gradle/caches/*或
如果没有添加,请尝试将以下内容添加到您的gradle.build文件中
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'https://stackoverflow.com/questions/56795138
复制相似问题