我以前使用本地 Java 1.6 Stax 解析器用 Java 编写了一个库。但是,我现在想将此库用于 Android,这意味着不支持此解析器。我想使用 Woodstox,因为它实现了 Stax 1.0 api,我不必重写我当前的任何代码,只需在依赖项中添加。
Android 没有 stax 1 api,所以我意识到我必须添加它。现在,我已将 woodstox-core-asl-4.2.0.jar、stax-api-1.0-2.jar 和 stax2-api-3.1.3.jar 添加到类路径中。一切都编译得很好,但是当我真正尝试运行一个依赖于这个库的 Android 应用程序时,我得到运行时错误,表明它没有使用 Woodstox 作为 stax 1 api 的实现。
我有什么误解或做错了吗?我错过了一个罐子吗?我已经彻底阅读了Woodstox 帮助页面,但找不到我遗漏的任何其他内容。
编辑:我开始怀疑是否真的可以在 Android 上使用 Woodstox。问题在于对 stax api 的依赖。经过一些研究后,我发现 Dalvik VM 似乎无法接受那些位于 javax.* 命名空间中的包。