繁体   English   中英

AndroidX Room 生成 class 错误:“类是公共的,应在名为 class.java 的文件中声明”

[英]AndroidX Room generated class error: "Class is public, should be declared in a file named class.java"

许多关于 SO 的类似问题,但它们不属于 AndroidX Room 库生成的类。 请不要将此问题标记为重复,因为类似的问题与传统的 Java 类相关,而不是 Room 生成的类。

根据 Android Room 的文档,我定义了一个数据库和表实体,如下所示:

数据库:

@Database(entities = [User::class], version = 1, exportSchema = false)
abstract class UserDatabase : RoomDatabase() {
    ...
}

实体:

@Entity
data class User(
    ...
)

但是在构建时,我收到一个跟踪到生成的文件user.java的错误:

error: class User is public, should be declared in a file named User.java

有人在使用 Room 时遇到过这个错误吗?

将实体移动到它自己的名为User.kt的文件中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM