2015-01-20 64 views
1

我想用相關的Ruby版本,rspec版本和gems來設置每個Ruby項目/應用程序。Gemfile使用; Ruby Version&Rspec

在大多數情況下,我將使用使用當前版本的Ruby,但對於幾個應用程序,我必須使用Ruby -1.9.3和適當的rspec版本。

的Gemfile

source "https://rubygems.org" 

ruby '1.9.3' 
gem 'rspec', "1.9.3" 
gem 'json' 
gem 'spreadsheet' 
gem "pdf-reader", "~> 1.3" 

運行;

bundle install 

結果在;

$ bundle install 
Fetching gem metadata from https://rubygems.org/......... 
Resolving dependencies... 
Could not find gem 'rspec (= 1.9.3) ruby' in the gems available on this machine 

不確定在這裏做什麼。

回答

3

您似乎指定了RSpec的無效版本。嘗試一個列出的here。實際上,如果我正確地閱讀文檔,您可能需要1.3.2或更早的版本才能與Ruby 1.9.3一起使用 - 哦,等等......永遠不要介意!我相信我跳到了一個無效的結論,那裏只是爲您檢查了依賴關係。

編輯:解決進一步的問題,關於配置的實際ruby版本和預期之間的斷開連接。每個打包程序文檔here(第二頁到最後一段)「ruby'1.9.3'」這一行用於記錄您對寶石將與該特定版本的ruby 一起使用的期望文檔。bundler會引發異常該案例 - 正如您在配置中報告的那樣。單獨的Gemfile也不能配置你的ruby環境,但只能配置ruby寶石。由於使用各種版本的Ruby是很常見的,因此有一些常見的解決方案可以促進這一點。我個人喜歡chruby這個,但rbenvrvm也一直流行的替代品。希望能幫助到你!

+0

謝謝@unigeek解決了rspec錯誤。 我選擇了:''gem'rspec',「1.3.2」' 然而,運行bundle install會導致; '您的Ruby版本是2.2.0,但您的Gemfile指定了1.9.3' – davidt 2015-01-21 05:48:28

+0

更新了我的回答,以解決您關於Bundler針對您的Ruby版本提出的異常的問題。 – unigeek 2015-01-21 14:11:19