4

我正在尝试使用 messagepack 在 Arduino 和 Java 应用程序之间来回发送数据,并且在设置 messagepack 的 java 实现时遇到问题:msgpack-java ( https://github.com/msgpack/msgpack-java /wiki/快速入门)。

我想避免自己构建整个库,所以我从这里使用了 v0.6.8 。

示例代码编译成功,但在运行时我得到

java.lang.NoClassDefFoundError: javassist/ClassPath

特别是在线

MessagePack msgpack = new MessagePack();

我尝试自己构建 msgpack jar,但由于缺少 javassist 包,源代码出现编译错误。我不知道从哪里获得正确的软件包,不幸的是开发人员在文档中没有提到这一点。我在他们的页面上找不到评论部分,所以我希望这里有人可以帮助我让 msgpack 正常工作。

我还查看了这个问题(Using MessagePack with Android),但不清楚在哪里可以获得我需要的库。

4

1 回答 1

3

我想这是一个相当明显的问题,但我会在这里回答,以防其他人遇到像我这样的麻烦。我最终通过查看 Maven POM 文件了解了我需要的依赖项。这个文件告诉我我需要json-simple库和javassist库。我刚刚下载了这两个库的 .jar 文件并将它们添加到 eclipse 构建路径中,一切都运行得很好。

作为替代方案,请考虑 sirbrialliance 的精简静态实现:https ://bitbucket.org/sirbrialliance/msgpack-java-lite 这有更好的文档记录,并且最初更容易设置。

于 2014-02-10T21:10:34.253 回答