2013-07-03 50 views
0

我已經使用Ruby 2.0創建了Rails 4項目。 我該如何暫時將Ruby的版本更改爲1.9.3。如何暫時更改Rails 4項目的ruby版本

我試圖在Gemfile中添加一行:

ruby "1.9.3" 

但是當我運行rake任務,它顯示:

/home/askar/.rvm/gems/[email protected]/gems/bundler-1.3.5/lib/bundler/definition.rb:361:in `validate_ruby!': Your Ruby version is 2.0.0, but your Gemfile specified 1.9.3 (Bundler::RubyVersionMismatch) 
    from /home/askar/.rvm/gems/[email protected]/gems/bundler-1.3.5/lib/bundler.rb:116:in `setup' 
    from /home/askar/.rvm/gems/[email protected]/gems/rubygems-bundler-1.2.0/lib/rubygems-bundler/noexec.rb:73:in `setup' 
    from /home/askar/.rvm/gems/[email protected]/gems/rubygems-bundler-1.2.0/lib/rubygems-bundler/noexec.rb:85:in `<top (required)>' 
    from /home/askar/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:110:in `require' 
    from /home/askar/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:110:in `rescue in require' 
    from /home/askar/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:35:in `require' 
    from /home/askar/.rvm/gems/ruby-2.0.0-p195/bin/ruby_noexec_wrapper:9:in `<main>' 

回答

3

您應該使用rvm。輸入您的控制檯:

rvm install 1.9.3 # if you don't have appropriate version installed 
rvm use 1.9.3 

那麼你應該運行

bundle 

安裝你的寶石(這是因爲切換到1.9.3後,當地的寶石將是空的),它應該工作。

+1

而且,oscar還必須運行Bundler,才能獲得Ruby 1.9.3的所有寶石。 –

+1

好點。我擴大了我的答案以反映這一點。謝謝。 –

2

爲項目創建.rvmrc文件

,而在應用程序的根目錄中運行命令

rvm use [email protected] --create --rvmrc 

所以每當你進入項目目錄紅寶石版本將變更爲1.9.3和意志使用gemset'rails3'。

相關問題