2012-02-21 72 views
2

我使用jruby 1.5.2作为我的生产环境,我试图将我的依赖关系管理从gem_tools移动到'bundler'。bundler jruby和json-jruby

一旦我检出服务器上的代码并运行“捆绑安装”,它将出现以下错误: 无法在任何宝石源中找到gem'json-jruby(〜> 1.5.0)ruby'在你的Gemfile上市

我也试过的JRuby -S创业板安装JSON-JRuby和再尝试:在Gemfile中路径选项后,我得到了以下错误:

找不到宝石“JSON-的JRuby (> = 0)java'in source at /usr/local/jruby-1.5.2/lib/ruby/gems/1.8/gems/json-jruby-1.5.0-java。 源代码不包含任何版本的'json-jruby(> = 0)java'

围绕此问题的修复任何想法将不胜感激。我希望很多人必须像我这样有这个问题。 (Java HotSpot™64位服务器虚拟机1.6.0_30)[amd64-java](amd64-java)(2010-08-20 1c5e29d)(Java HotSpot(TM)64位服务器VM 1.6.0_30)[amd64-java ] 轨2.2.2

的Gemfile:

.... 
.... 
platforms :jruby do 
    gem 'activerecord-jdbc-adapter', '0.9.4' 
    gem 'activerecord-jdbcmysql-adapter', '0.9.4' 
    gem "json-jruby", "~> 1.5.0" 
    gem 'image_voodoo', '0.7' 
    gem 'jdbc-mysql', '5.0.4' 
    gem 'jruby-openssl', '0.2.3' 
end 
.... 
.... 
group :integration, :devwithcaching, :production do 
    if defined?(JRUBY_VERSION) 
    gem "json-jruby", "~> 1.5.0" 
    else 
    gem 'json_pure', '1.6.5' 
    end 
end 
+0

当您尝试** gem install json ** – Francois 2012-02-21 09:23:27

+0

时会发生什么gem目录也是空的 – user380692 2012-02-21 15:10:39

回答

0

所以这是一个古老的,但我的答案仍然是有关最近的JRuby还有:

这是最好用简单的JSON宝石哪个提供了关于MRIÇEXT和-java版本在JRuby以获得最佳性能(因为版本1.5.0〜01/2011),从而简单地:

ruby gem 'json', '>= 1.5.0' platforms :jruby块不把它包装(甚至在Gemfile中使用更差的defined? JRUBY_VERSION)。

注:JSON-的JRuby宝石似乎已经停止大约在同一时间(01/2011)作为JSON宝石开始出货宝石的-java版本随地吐痰版本,因此,如果有在JRuby上有问题,并且它不太可能让它们修复,所以最好避免它。