错误:找不到字段的设置器 - 房间
Posted
技术标签:
【中文标题】错误:找不到字段的设置器 - 房间【英文标题】:error: Cannot find setter for field - Room 【发布时间】:2020-10-17 05:28:45 【问题描述】:我真的不知道为什么会出现这个错误。代码看起来很简单。
@Entity(indices = @Index("clientLocalId"))
.
.
private @PrimaryKey String clientLocalId;
public String getClientLocalId()
return clientLocalId;
public void setClientLocalId(long idInvoice, String receipt)
this.clientLocalId = String.valueOf(idInvoice) + " " + receipt;
我试图在 client 中更改名称,重新启动并清除缓存,同样的错误。
错误:找不到字段的设置器。 私人@PrimaryKey String clientLocalId; ^
任何想法都值得赞赏。提前致谢!
【问题讨论】:
【参考方案1】:这是因为clientLocalId
的第二个参数receipt
,
删除它或添加另一个 setter 方法,
我建议您在插入数据库之前将收据添加到实体类之外的clientLocalId
【讨论】:
【参考方案2】:Room 正在寻找一个只接受单个 String 值的 setter。你的方法有两个。
将其更改为以下并使用另一种方法来创建您的串联 id。
public void setClientLocalId(String id)
this.clientLocalId = id;
【讨论】:
以上是关于错误:找不到字段的设置器 - 房间的主要内容,如果未能解决你的问题,请参考以下文章
Android Studio:房间:错误:找不到字段的吸气剂
错误:找不到字段的设置器。 - java.util.ArrayList 中的大小 - Room 中的嵌入式 ArrayList 无法编译
@Embeddables 的 @ElementCollection 每个都具有 @Embeddable 字段导致“找不到设置器”异常