2012-02-21 108 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上有問題,並且它不太可能讓它們修復,所以最好避免它。