android - 埃克托普 NoClassDefFoundError : org. ektorp.impl.docref.DocumentReferenceSerializerProvider

标签 android couchdb noclassdeffounderror

我正在尝试在 Android 应用程序中使用 Ektorp CouchDB 库,但我总是遇到此异常:

java.lang.NoClassDefFoundError: org.ektorp.impl.docref.DocumentReferenceSerializerProvider

这是我的代码:

HttpClient authenticatedHttpClient = new StdHttpClient.Builder().host("myhostname").port(5984).username("username").password("password").build();
CouchDbInstance dbInstance = new StdCouchDbInstance(authenticatedHttpClient);
CouchDbConnector db = dbInstance.createConnector("luscinia", true);

异常总是出现在上述代码的最后一行。

我在 erktop wiki 上关注了这里的依赖项:http://code.google.com/p/ektorp/wiki/dependencies

这导致我的项目包含:

  • commons-io-2.0.1.jar
  • httpclient-4.1.1.jar
  • jackson-core-asl-1.8.1.jar
  • jackson-mapper-asl-1.8.1.jar
  • org.ektorp-1.1.1.jar
  • slf4j-api-1.6.1.jar
  • slf4j-simple-1.6.1.jar(没有它 slf4j 会失败)

LogCat 在异常发生前给了我一个警告和一个错误行,也许它们可以提供帮助:

Link of class 'Lorg/ektorp/impl/docref/DocumentReferenceSerializerProvider;' failed
Could not find class 'org.ektorp.impl.docref.DocumentReferenceSerializerProvider', referenced from method org.ektorp.impl.StdObjectMapperFactory.createObjectMapper

我不明白他们的意思。 有什么想法吗?

最佳答案

恐怕 Ektorp 1.1.1 与 Jackson 1.8 不兼容。 这将在今年夏天发布的 1.2.0 版本中得到修复。同时使用 Jackson 1.7.7。

关于android - 埃克托普 NoClassDefFoundError : org. ektorp.impl.docref.DocumentReferenceSerializerProvider,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6358691/

相关文章:

android - 如何在 Android 的 Tabbar 中添加图标?

Android Nearby 不适用于 Android Things

java - AWS SQS : java. lang.NoClassDefFoundError : com/fasterxml/jackson/annotation/JsonMerge?

java.lang.NoClassDefFoundError

android gridview+baseadapter+scroll 在背景中设置图像的问题?

Android 异步任务 : async-task for each viewpager fragment

具有动态用户组的 CouchDB 复制策略

python - CouchDB + Python 中的 SELECT ... WHERE ... 查询

mongodb - CouchDB 或 MongoDB 中的多对多关系

java - JasperReports : java. lang.NoClassDefFoundError : Could not initialize class net. sf.jasperreports.engine.util.JRStyledTextParser