我正在努力为用Kotlin编写的项目增加空间,但我总是遇到这个错误。
用户数据类
@Entity
data class Users(
@PrimaryKey
val id: String? = "",
@ColumnInfo(name = "userFullName")
val name: String?,
@ColumnInfo(name = "userEmail")
val email: String?,
@ColumnInfo(name = "userPassword")
val password: String?,
@ColumnInfo(name = "userBDay", defaultValue = "")
val birthday: String?
)UserDao
@Dao interface UserDao {
@Insert
fun insertUser(user: Users)
@Delete
suspend fun deleteUser(user: Users)
@Query("SELECT * FROM users")
fun getAllUsers(): List<Users>
}用户数据库
@Database(entities = [Users::class], version = 1)
abstract class UserDatabase : RoomDatabase() {
abstract fun userDao(): UserDao
companion object {
@Volatile
private var instance: UserDatabase? = null
fun getUserDatabase(context: Context): UserDatabase {
return instance ?: synchronized(this) {
val instance = Room.databaseBuilder(
context.applicationContext,
UserDatabase::class.java,
"usersDB"
).build()
this.instance = instance
instance
}
}
}
}当我构建它的时候,我得到了一个错误:
失败:生成失败,出现异常。
错误: 2021-02-14T16:35:38.826+0300错误执行失败的任务':app:kaptDebugKotlin‘。执行org.jetbrains.kotlin.gradle.internal.KaptExecution java.lang.reflect.InvocationTargetException (无错误消息)时发生故障
在我从github编写和下载的每一段代码中都有这个错误。
我在这些链接中尝试了解决方案:
Repeated Build fails "To use Coroutine features, you must add ktx......."
How to get rid of Incremental annotation processing requested warning?
A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptExecution
A failure occurred while executing com.android.build.gradle.internal.tasks
我还认为这可能是由AS引起的,我下载了其他版本的AS,也发生了同样的事情。
发布于 2021-07-30 07:57:11
这是因为android工作室ide和kotlin版本。所以,当我更新下一个版本或降级到其他版本时,问题就解决了
发布于 2021-02-14 17:57:20
@插入乐趣insertUser(用户:用户)
将此更改为
@插入挂起乐趣insertUser(用户:用户)
不应该在UI线程上进行插入。这就是这个错误的可能原因。
https://stackoverflow.com/questions/66196148
复制相似问题