我将其作为bug on the ORMLite Sourceforge bug tracker提出,但没有看到任何更新。我没有看到任何流程文档说是否需要做任何事情将其传递给Gray?
看到测试v4.47(在较旧的ORMLite版本上的行为会更糟,因为配置文件生成会更早失败)。
我的@DatabaseTable类都包含一些Android导入,例如
import android.content.Context;
我的大多数类都扩展了一个抽象超类,例如
@DatabaseTable(tableName = SongMessage.TABLE_NAME)
public class SongMessage extends AbstractMessage {
但是,我的一些类扩展了一个共享的抽象超类,例如
@DatabaseTable(tableName = PhotoMessage.TABLE_NAME)
public class PhotoMessage extends SingleImageMessage implements <snip> {
SingleImageMessage扩展了相同的通用AbstractMessage:
public abstract class SingleImageMessage extends AbstractMessage {
对于直接子类,运行OrmLiteConfigUtil可以正常工作,但对于扩展中间抽象类的子类则不能运行:
...
Wrote config for class com.mypackage.TextMessage
Skipping class com.mypackage.PhotoMessage because we got an error finding its definition: android/content/Context
Wrote config for class com.mypackage.SongMessage
...
最佳答案
抱歉这么晚才回复。最近,ORMLite已被换掉了。
对于直接子类,运行OrmLiteConfigUtil可以正常工作,但对于扩展中间抽象类的子类则不能运行:
显然,此问题是由于Context
导入引起的。不幸的是,OrmLiteConfigUtil在本地运行,无法访问该类,该类仅由Google导出为存根。
我可以做的一件事就是仅在无法调查超类时捕获并记录错误。因此子类将被正确输出。那行得通吗?