GreenDao3.0 填坑之实体类新增字段报错

762 阅读1分钟

实体类新增一个字段后,按照正常流程将build.gradle中的schemaVersion版本提高:

greendao {
    //数据库的schema版本,也可以理解为数据库版本号
    schemaVersion 8 //提高版本号
    //设置DaoMaster、DaoSession、Dao包名,也就是要放置这些类的包的全路径。
    daoPackage 'xx.xx.xxx.dao'
    //设置DaoMaster、DaoSession、Dao目录
    targetGenDir 'src/main/java'
}

并删除实体类中构造函数的hash值然后make project,竟然还报错:

If you would like to keep it, it should be explicitly marked with @Keep annotation.
Otherwise please mark it with @Generated annotation.

image.png

经过一番艰苦斗争,终于成功解决。原来不仅要删掉构造方法上的hash值,页面上所有自动生成的方法上的hash值都要一并删除,如下图中的这些hash值都要一起删掉,然后make project终于成功,是我天真了

image.png

image.png