java - 无法使用 rethinkdb java 驱动程序构建 android 项目

标签 java android rethinkdb

我尝试在我的 android 项目中包含 rethinkdb java 客户端驱动程序并尝试构建该项目,但失败了。我正在使用 Android Studio。

这是 build.gradle 中的行:

compile (group: 'com.rethinkdb', name: 'rethinkdb-driver', version: '2.2-beta-1')

我得到的是这个异常:

:app:transformClassesWithDexForDebug
UNEXPECTED TOP-LEVEL EXCEPTION:
java.lang.RuntimeException: Exception parsing classes
    at com.android.dx.command.dexer.Main.processClass(Main.java:752)
    at com.android.dx.command.dexer.Main.processFileBytes(Main.java:718)
    at com.android.dx.command.dexer.Main.access$1200(Main.java:85)
    at com.android.dx.command.dexer.Main$FileBytesConsumer.processFileBytes(Main.java:1645)
    at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:284)
    at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:166)
    at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
    at com.android.dx.command.dexer.Main.processOne(Main.java:672)
    at com.android.dx.command.dexer.Main.processAllFiles(Main.java:574)
    at com.android.dx.command.dexer.Main.runMonoDex(Main.java:311)
    at com.android.dx.command.dexer.Main.run(Main.java:277)
    at com.android.dx.command.dexer.Main.main(Main.java:245)
    at com.android.dx.command.Main.main(Main.java:106)
Caused by: com.android.dx.cf.iface.ParseException: bad class file magic (cafebabe) or version (0034.0000)
    at com.android.dx.cf.direct.DirectClassFile.parse0(DirectClassFile.java:472)
    at com.android.dx.cf.direct.DirectClassFile.parse(DirectClassFile.java:406)
    at com.android.dx.cf.direct.DirectClassFile.parseToInterfacesIfNecessary(DirectClassFile.java:388)
    at com.android.dx.cf.direct.DirectClassFile.getMagic(DirectClassFile.java:251)
    at com.android.dx.command.dexer.Main.parseClass(Main.java:764)
    at com.android.dx.command.dexer.Main.access$1500(Main.java:85)
    at com.android.dx.command.dexer.Main$ClassParserTask.call(Main.java:1684)
    at com.android.dx.command.dexer.Main.processClass(Main.java:749)
    ... 12 more
1 error; aborting

我尝试使用 java 1.6、1.7 进行编译,但问题仍然存在。 Gradle插件版本:1.5.0

我已遵循其他 SOF 答案,但问题仍然存在。

最佳答案

目前,Java 驱动程序仅与 Java 8 兼容。请参阅此博文:

https://www.rethinkdb.com/blog/official-java-driver/

此外,有关该主题的 GitHub 问题:

https://github.com/rethinkdb/rethinkdb/issues/3930#issuecomment-94911187

主要原因是 Java 8 的官方要求是 lambda 支持。您可能需要通过打开 GitHub issue 向 RethinkDB 团队请求对 Java 7(或更低版本)的额外支持。 。

但是,正如 Daniel 所建议的,您可以尝试这个 Java(非官方)驱动程序:

https://github.com/dropbox/rethink-java-driver

关于java - 无法使用 rethinkdb java 驱动程序构建 android 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34591005/

相关文章:

java - Android Webview EvaluateJavascript 有时不返回响应

java - 如何让 RethinkDB 在发生新插入时调用 java 函数?

rethinkdb - 如何在 RethinkDB 中仅使用主键进行原子更新?

java - 添加外部属性文件打包war Spring Boot

android - 如何使用 ffmpeg 命令在 android 中的 .avi 视频中添加文本标题

android - 尝试将多个复选框添加到 Android Studio 上的数组中

javascript - RethinkDB,将元素添加到嵌套的数组中

java - 如何为 Web 应用程序创建文件服务器

java - 实现类的接口(interface)引用的序列化在反序列化时失败

Java ExecutorService 运行线程两次