我正在使用jenkins构建一个使用ORMLite的Android库项目,我收到以下错误,我真的不知道如何解决:
[javac] /Users/x/Desktop/workspace/x/src/com/x/x/database/DatabaseHelper.java:109:
type parameters of <D>D cannot be determined; no unique maximal instance exists
for type variable D with upper bounds com.x.x.database.dao.DatabaseObjectDao,
com.j256.ormlite.dao.Dao<com.x.x.database.entity.UserEntity,?>
[javac] sUserEntityDao = getDao(UserEntity.class);
任何帮助都会非常棒:)
答案 0 :(得分:0)
所以下面的内容可能不对,但我会把它留给子孙后代。我最初认为这是一个ORMLite错误,但现在我认为这是一个编译器错误。
我认为你应该看看这个问题/答案:
Why does the compiler state no unique maximal instance exists?
如果异常树的一部分可能有一些消息影响,则可能是ORMLite错误:
Could not find OpenHelperClass because none of the generic parameters of class
YourActivityClass extends OrmLiteSqliteOpenHelper. You should use
getHelper(Context, Class) instead.
Android应用程序的简单ORMLite模式是活动扩展OrmLiteBaseActivity<YourDatabaseHelper>
。类似的东西:
public class HelloAndroid extends OrmLiteBaseActivity<DatabaseHelper> {
然后当你调用getHelper()
时,ORMLite可以自动找出要使用的DatabaseHelper
助手类。还有其他方法可以为ORMLite设置接线。我要查看Android starting docs,然后查看Android example programs。