Room 迁移遇到问题

1. 警告: Schema export directory is not provided to the annotation processor so we cannot export the schema. You can either provide `room.schemaLocation` annotation processor argument OR set exportSchema to false.
未向批注处理器提供架构导出目录,因此无法导出架构。您可以提供room.schemaLocation注释处理器参数,也可以将exportSchema设置为false。
迁移 Room 数据库  |  Android 开发者  |  Android Developers

Room 可以在编译时将数据库的架构信息导出为 JSON 文件。如需导出架构,请在 app/build.gradle 文件中设置 room.schemaLocation 注解处理器属性:

build.gradle

GroovyKotlin

android {...defaultConfig {...javaCompileOptions {annotationProcessorOptions {arguments += ["room.schemaLocation":"$projectDir/schemas".toString()]}}}
}

导出的 JSON 文件代表数据库的架构历史记录。您应将这些文件存储在版本控制系统中,因为此系统允许 Room 出于测试目的创建较旧版本的数据库。

2.创建嵌套对象

@Embedded 

public class Address {public String street;public String state;public String city;@ColumnInfo(name = "post_code") public int postCode;
}@Entity
public class User {@PrimaryKey public int id;public String firstName; @Embedded public Address address;
}

 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部