我一直想弄清楚如何解决这个问题:
There must be an @Id field (String, Long, or long)
虽然班上有@Id
年份。我试过做mvn clean,Eclipse项目干净,没有编译时错误。但是,当我运行我的应用程序并尝试保留已注册的实体时,我收到此错误。
我正在使用Objectify-4并使用OfyLoader模式。
CODE:
import java.util.List;
import com.googlecode.objectify.annotation.Entity;
import com.googlecode.objectify.annotation.Id;
@Entity
public class TestEntity {
@Id
private Long id;
private List<String> strList;
public TestEntity() {}
public TestEntity(List<String> strList){
this.setStrList(strList);
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public List<String> getStrList() {
return strList;
}
public void setStrList(List<String> strList) {
this.strList = strList;
}
}
答案 0 :(得分:2)
确保objectify 4在你的类路径上,并且唯一的id导入是:
import com.googlecode.objectify.annotation.Id;
答案 1 :(得分:0)
您应首先打包然后运行您的项目。因为如果您运行jetty,例如,运行操作无法看到注释