我最近刚刚安装了JRuby和Thrift gem,在核磁共振中使用了它。我遇到了一个问题,如果我需要'thrift‘,我会收到消息"Unable to。默认为纯thrift_native库“。如果我随后尝试并要求使用ruby生成的代码Thrift::Struct_Union,我会得到这个错误:"NameError: uninitialized constant Thrift::Struct_Union“
节俭的gem目前不能与JRuby一起工作吗?
除了使用gem之外,我还可以通过JRuby来使用thrift吗?
编辑:在我的mac上搜索后,我发现MRI gem和JRuby gem是不同的,即使gem是相同的版本(0.2.0.4)。现在这似乎是一个糟糕的想法,但是如果你将.rb文件从MRI gem复制到JRuby gem中,并将require 'thrift/struct_union'添加到thrift.rb中,你将不会再得到任何与Thrift gem相关的错误,除非它找不到thirft_native,并且将使用纯Ruby库。这是可以解释的,因为thrift_native是为C而不是Java创建的。
发布于 2010-09-19 00:03:57
当您已经在使用JRuby时,我会使用Java原生thrift客户端。对我来说,节俭是迁移到JRuby的首要原因,因为Ruby实现相当慢且有buggy。
https://stackoverflow.com/questions/3712531
复制相似问题