0

Ruby 2.0 で Rails 4 プロジェクトを作成しました。Ruby のバージョンを一時的に 1.9.3 に変更する方法を教えてください。

Gemfile に次の行を追加しようとしました。

ruby "1.9.3"

しかし、rake タスクを実行すると、次のように表示されます。

/home/askar/.rvm/gems/ruby-2.0.0-p195@global/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/ruby-2.0.0-p195@global/gems/bundler-1.3.5/lib/bundler.rb:116:in `setup'
    from /home/askar/.rvm/gems/ruby-2.0.0-p195@global/gems/rubygems-bundler-1.2.0/lib/rubygems-bundler/noexec.rb:73:in `setup'
    from /home/askar/.rvm/gems/ruby-2.0.0-p195@global/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>'
4

2 に答える 2

3

を使用する必要がありますrvm。コンソールに次のように入力します。

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

次に、実行する必要があります

bundle

gem をインストールするには (切り替え後のローカル gem1.9.3が空になるためです)、動作するはずです。

于 2013-07-03T08:29:47.583 に答える
2

プロジェクトの .rvmrc ファイルを作成します

アプリケーションのルートでコマンドを実行します

rvm use 1.9.3@rails3 --create --rvmrc

そのため、プロジェクト ディレクトリに入るたびに ruby​​ バージョンが 1.9.3 に変更され、gemset 'rails3' が使用されます。

于 2013-07-03T08:51:07.130 に答える