我是 RoR 新手,我尝试遵循 Micheal Hartl 的 Ruby on Rails 教程。在开始本教程之前,我已经提前设置了所有内容,并将 Rails 版本更新为 4.1.1,一切都运行良好,直到教程中我需要有最高 4.0.5 版本的 Rails 才能继续该示例。为了做到这一点,我尝试了几件事。首先我运行:
gem uninstall rails
之后我收到消息说它已被卸载,但在运行rails -v 时我仍然有4.1.1。然后,按照 stackoverflow 上的一个答案,卸载 Railties,我做了:
gem uninstall railties 4.1.1
之后,当运行:rails -v 时,我收到一条消息,表明版本 3.2.18 正在运行,这是我作为 Railsinstaller 的一部分安装的版本。不幸的是,在创建一个新应用程序后,它多次停止在捆绑安装上并且没有继续。然后我尝试删除所有宝石以便从头开始安装所有内容。我用以下方法做到了:
红宝石-e“gem list
.split(/$/).each { |行|看跌期权gem uninstall -Iax #{line.split(' ')[0]}
除非line.strip.empty? }”
我也在这里找到了。它确实删除了 gem,之后我卸载了 Ruby。然后我使用 Railsinstaller 再次安装了所有内容,Rails 版本为 3.2.18。当它完成后,当我打开cmd时,在Rails版本下的Rails环境配置中,我可以再次看到版本4.1.1。当我跑时:
gem uninstall rails
它卸载了 3.2.18 版本,正确的版本。我再次安装了所有内容,希望安装了正确的版本,并且显示 4.1.1 是一个小错误,但在创建新应用程序时,捆绑程序安装仍然无法正常工作。现在,经过几次尝试,我尝试保持原样,不卸载任何东西,而是尝试安装 4.0.5 版本。首先它安装了railties 和rails 4.1.1,然后我得到一个错误:找不到有效的gem '4.0.5'。
我检查了几个问题和答案,尝试了一整天的设置,但没有成功。我试图写出详细信息,以便您可以更好地理解,因为存在类似的问题,但不是针对我所遇到的完全相同的问题。无论我做了什么,我都完成了许多宝石,版本 4.1.1 仍然在文件夹中。我希望有人知道该怎么做以及如何删除以前的版本。提前致谢!
首先找到rails gem目录。
有很多方法可以做到这一点,例如查看您的GEM_HOME
and GEM_PATH
echo $GEM_HOME
echo $GEM_PATH
这是一个暴力的方法:
find / -type d -name rails-4.1.1
这可能会找到多个目录,例如系统的 gem 目录、cache、docs、bundler 目录、RVM 或 chruby 的 ruby 版本控制目录等。
如果您是系统的唯一用户,请删除所有这些。
立即验证 4.1.1 是否消失:
# Show the executable, if any
which rails
# Show the version, which should not say 4.1.1
rails --version
# If you're within a bundle directory
bundle exec rails --version
还不要捆绑。
编辑您的 Gemfile(它也可能要求 Rails 4.1.1),然后设置您想要的确切 Rails 版本:
gem 'rails', '= 4.0.5'
现在捆绑:
bundle update
验证 Rails 4.1.1 不在您的 Gemfile 中,也没有锁定:
grep 4.1.1 Gemfile Gemfile.lock
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)