我目前正在尝试设置绿色dao,以便在android项目中使用。
我按照greenDao github页面上的说明进行操作。我添加了buildscript部分和编译依赖项,并在android插件之前添加了应用插件。
在构建时,我得到了一些(并不总是相同的)org.eclipse.core和org.eclipse.jdt类的NoClassDefFoundErrors。堆栈跟踪显示错误发生在greendao生成过程中的某个地方。
:presentation:greendao FAILED FAILED:生成失败,出现异常。[…]错误:java.lang.NoClassDefFoundError:无法初始化类org.eclipse.jdt.internal.core.JavaModelManager,网址:org.eclipse.jdt.core.JavaCore.getOptions(JavaCore.java:3876)org.greenrobot.greendao.codemodifier.JdtCodeContext.(JdtCodeContext。kt:15)在org.greenrobot.greendao.codemodifier.Greendao3生成器。
不确定这是否与绿道有关。也许这是一些与依赖性解决方案有关的等级问题?尝试让gradle打印buildscript类路径,但没有找到方法。
我认为绿道的配置总体上是正确的。对照greenDao文档检查了两次。可以在我的代码中使用greenDao注释,stacktrace显示greenDao插件在构建过程中运行,至少尝试生成一些东西。
有线索吗?
今天早上找到了解决方案:
我的项目分为多个模块。尽管我只需要一个模块的插件,但似乎必须将buildscript部分添加到根gradle脚本中。