
Exception in thread "main" java.lang.NoClassDefFoundError: org/greenrobot/greendao/generator/Schema at com.company.daogenerator.ProjectDaoGenerator.main(ProjectDaoGenerator.java:20) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)Caused by: java.lang.classNotFoundException: org.greenrobot.greendao.generator.Schema at java.net.urlclassloader.findClass(urlclassloader.java:381) at java.lang.classLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) at java.lang.classLoader.loadClass(ClassLoader.java:357)
我在我的应用程序的Gradle文件中使用GreenDAO 3.2.0:
compile 'org.greenrobot:greendao:3.2.0'
此外,在DaoGenerator的Gradle文件中:
apply plugin: 'java'dependencIEs { compile filetree(dir: 'libs',include: ['*.jar']) compile 'org.greenrobot:greendao-generator:3.2.0'} 我的ProjectDaoGenerator.java文件:
package com.company.daogenerator;import org.greenrobot.greendao.generator.DaoGenerator;import org.greenrobot.greendao.generator.Entity;import org.greenrobot.greendao.generator.Property;import org.greenrobot.greendao.generator.Schema;public class ProjectDaoGenerator { private static Entity primaryKeyEntity; private static Entity itemTypeEntity; public static voID main(String args[]) throws Exception { Schema schema = new Schema(1,"com.company.project.datamodel"); schema.enableKeepSectionsByDefault(); // define entitIEs Entity primaryKey = schema.addEntity("CDPrimaryKey"); Entity installation = schema.addEntity("CDInstallation"); // Z_PRIMARYKEY primaryKeyEntity = primaryKey; primaryKey.settablename("Z_PRIMARYKEY"); primaryKey.addLongProperty("ENT").columnname("Z_ENT").primaryKey(); primaryKey.addIntProperty("MAX").columnname("Z_MAX"); primaryKey.addStringProperty("name").columnname("Z_name"); primaryKey.addIntProperty("SUPER").columnname("Z_INT"); // CDInstallation installation.settablename("ZCDINSTALLATION"); installation.addLongProperty("packageDate").columnname("ZPACKAGEDATE"); (...) // Other PropertIEs // **** Generate Schema **** new DaoGenerator().generateall(schema,"app/src/main/java"); }} 好像它找不到org.greenrobot.greendao.generator.Schema.
解决方法 像这样设置生成器的build.gradle文件(特别注意mainClassname):然后单击AndroID Studio右侧边栏中的“Gradle”选项卡,选择daogenerator的“run”任务,如下所示:
它对我有用,更多细节检查链接:https://github.com/greenrobot/greenDAO/issues/619
http://greenrobot.org/greendao/documentation/generator/#Triggering_generation
以上是内存溢出为你收集整理的android – 尝试为GreenDAO运行DaoGenerator时出现NoClassDefFoundError全部内容,希望文章能够帮你解决android – 尝试为GreenDAO运行DaoGenerator时出现NoClassDefFoundError所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)