我试图使用EventMachine的等,具有JRuby的。我得到原生扩展的错误。我认为,这是由于Java的限制。我认为我是在Windows上,其实这个问题进一步复杂化。一些澄清,将不胜感激。什么扩展可以/不能使用JRuby使用?我如何知道?感谢。

有帮助吗?

解决方案

没有在JRuby中使用本机扩展非常简单的方法。原生扩展呼吁C代码不能在JRuby中被称为没有在java中实现它。除了那几个扩展所看到的jruby端口,用于你提到例如EventMachine的。

和据我知道,看看你是否可以使用宝石的唯一途径/扩展使用JRuby是阅读的文档,请尝试,或阅读源

其他提示

JRuby中不支持原生扩展,不幸的是,因为它们依赖于特定的C实现特定的内存和运行时的详细信息。点击 通常你可以找到在JVM上的等价库将作为替补很好地工作...

要完成 LDomagala的答案,你也可以参考此线程 相关到相同的 “本机扩展” 的问题。

有些安装脚本可以依靠RUBY_PLATFORM以确定是否建立根据您的操作系统的本机扩展。如果您使用的是Windows将不建立他们。

的另一种方法,以避免本地编译使用ENV变种“NORUBYEXT”。

但仍可能涉及红宝石安装脚本一些调整...

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top