因为我以前都是用3.0的注解来生成Entity实体类的, 没有用过2.0用代码操作的方式,所以记录一下。
官网图如上:
第一点:在你的generator类里面添加依赖。
那么打开AS,新建一个Module,类型为Java Library.
在Module的gradle中复制粘贴依赖
看官网的第三点:在app中添加依赖:
写一个类用来生成GreenDao。
public class ExampleDaoGenerator {
private static final String packageName="GreenDao";
private static final String generatePath="D:\\AndroidProject\\MyTest\\app\\src\\main\\java\\com\\solory\\mytest";
public static void main(String args[]) {
Schema schema=new Schema(1,packageName);
addRideRecord(schema);
try {
new DaoGenerator().generateAll(schema,generatePath);
}catch (Exception e){
e.printStackTrace();
}
}
private static void addRideRecord(Schema schema) {
Entity rideRecord=schema.addEntity("RideRecord");
rideRecord.addIdProperty();
rideRecord.addIntProperty("bike_id");
rideRecord.addDateProperty("start_at");
rideRecord.addDateProperty("end_at");
rideRecord.addBooleanProperty("isPay");
rideRecord.addIntProperty("money");
}
}
之后点击run,立马报错
这个错误起码折腾了我两个小时,最终在google后在GreenDao的github的issue那里找到了答案。(我百度了好久好久都没有找到,去你妈的百度)。
https://github.com/greenrobot/greenDAO/issues/619
官方解决方案:
具体操作为:
添加这么两句在java类中的gradle:
apply plugin: 'application'
mainClassName = "com.solory.daoexamplegenerator.ExampleDaoGenerator"
点击右边框的
双击如下的run文件,GreenDao
注意:如果没有在gradle里面添加apply plugin:'application'那两句的话,是没有application这个包的。
网友评论