我安装了Rails 4.0.0.beta1,但我需要降级到Rails 3.2.13。
我使用过gem install rails 3.2
但是Rails继续使用4.0.0.beta1。
我搜索了现有的疑惑,并尝试按照答案,但没有一个对我有效。
认为这是一个简单的疑问,我需要解决。
答案 0 :(得分:8)
您遇到的问题与列出的here相同。
这对我有用,也应该对你有用。这是一个更通用的解决方案,无论您的特定版本的Rails beta如何都可以使用。请注意,为了转回3.2.13(或您想要返回的任何版本),您必须删除Railties和Rails。
只是做:
gem uninstall rails
然后,选择您拥有的Rails 4版本并将其删除。
然后,做:
gem uninstall railties
并做同样的事情。
当我卸载Rails 4版本的铁路时,它告诉我,不能满足几个宝石(咖啡轨和sass-rails)的依赖关系。所以我就像上面那样对它们做了同样的事情,并且删除了它们的Rails 4版本(例如,对于sass-rails,我安装了一个名为sass-rails-4.0.0.rc1的版本)。
完成了!终端应列出3.2.13作为您当前的Rails版本。
答案 1 :(得分:0)
在控制台中尝试以下操作。它会将rails更新或安装到指定的版本。
gem update rails 3.2.13
答案 2 :(得分:0)
除非您使用bundle exec
,否则Rubygems将始终使用最新安装的gem版本。您需要卸载您不想要的版本。
gem uninstall rails --version 4.0.0.beta1
答案 3 :(得分:0)
gem uninstall rails --version xxx
的答案应该删除rails gem。
但是,如果您希望或需要同时提供多个版本的rails,您可以使用bundler加载正确版本的gem(如预期的那样)。
项目目录中的 $ bundle exec rails
列出了Gemfile中的rails版本,可以让你加载所需的gem而不会发生冲突。
此外,rvm及其gemset功能还可以让您实现相同的目标,而无需使用bundle exec
答案 4 :(得分:0)
Rails将使用Gemfile
中指定的版本:
gem "rails", "4.0.0.beta1"
将其替换为您要使用的版本:
gem "rails", "~> 3.2.0"
当然,您还需要更改代码和配置以使用旧的Rails API。
答案 5 :(得分:0)
我在Rails 4.0.0最终版本中遇到了同样的问题。要检查当前安装的内容,您可以运行以下命令:
>pik gem list
然后我检查了rails版本。它显示了轨道3.2.14(我想要的)与轨道4.0.0,4.0.0.rc2和3.2.14。
然后我跑了>gem uninstall railties
并卸载除3.2.14以外的所有其他版本,现在效果很好。问题是当调用Rails 3.2安装时,会安装最新(或所有)版本的railties。
如果您有其他版本的rails,则可以使用
删除它们>gem uninstall rails
并删除您不想拥有的rails版本。