Ruby on rails 无法使用JRuby构建gem本机扩展
我将ruby版本从ruby 1.9.3-p125更改为JRuby 1.7.0-preview1,并使用。当我在我的项目上执行Ruby on rails 无法使用JRuby构建gem本机扩展,ruby-on-rails,jruby,bundler,jrubyonrails,Ruby On Rails,Jruby,Bundler,Jrubyonrails,我将ruby版本从ruby 1.9.3-p125更改为JRuby 1.7.0-preview1,并使用。当我在我的项目上执行jruby-S bundle install时,出现如下错误: ... Using bson (1.6.2) Installing bson_ext (1.6.2) with native extensions Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
jruby-S bundle install
时,出现如下错误:
...
Using bson (1.6.2)
Installing bson_ext (1.6.2) with native extensions
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/Users/joshchang/.rbenv/versions/jruby-1.7.0-preview1/bin/jruby extconf.rb
NotImplementedError: C extension support is not enabled. Pass -Xcext.enabled=true to JRuby or set JRUBY_OPTS or modify .jrubyrc to enable.
(root) at /Users/joshchang/.rbenv/versions/jruby-1.7.0-preview1/lib/ruby/shared/mkmf.rb:8
require at org/jruby/RubyKernel.java:991
(root) at /Users/joshchang/.rbenv/versions/jruby-1.7.0-preview1/lib/ruby/shared/rubygems/custom_require.rb:1
(root) at extconf.rb:1
...
有什么建议吗?谢谢。只需阅读错误消息并按它所说的那样尝试:
jruby-xtext.enabled=true-S bundle install
虽然它可能不起作用-一般来说,JRuby上不支持C扩展。
JRuby\u OPTS=“-xtext.enabled=true”gem安装应该可以工作 您确实需要查看捆绑包依赖关系,找出为什么要使用bson_ext gem(gem'bson'
在JRuby上应该可以单独使用),并禁用它或声明它依赖于平台,例如gem'bson_ext',:platform=>:ruby
。但这都是猜测,如果你给我们看你的GEM文件,我们可能会解决这个问题。。。