AndroidX Room generated class error: "Class is public, should be declared in a file named 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 房间的 documentation 之后,我定义了一个数据库和 table 实体如下:
数据库:
@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
的文件中。
许多关于 SO 的类似问题,但它们与 AndroidX Room 库生成的 类 无关。请不要将此问题标记为重复,因为类似问题涉及传统 Java 类,而不是 Room 生成的问题。
在 Android 房间的 documentation 之后,我定义了一个数据库和 table 实体如下:
数据库:
@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
的文件中。