RoR – 如何删除Rails 4.1.1版本?
我是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的一部分安装的那个。 不幸的是,在创建一个新的应用程序后,它在捆绑安装上停止了几次并没有继续。 然后我尝试删除所有gem,以便从头开始安装所有内容。 我做到了:
ruby -e“ gem list
.split(/ $ /)。每个{| line | puts gem uninstall -Iax #{line.split(' ')[0]}
除非line.strip.empty?}”
我也在这里找到了。 它确实删除了gem,之后我卸载了Ruby。 然后我用rails Rails版本3.2.18再次安装了所有东西。 当它完成并且我打开cmd时,在Rails版本下的Rails环境配置中,我可以再次看到版本4.1.1。 当我跑:
gem uninstall rails
它卸载了3.2.18版本,正确的版本。 我再次安装了所有内容,希望安装正确的版本并且显示4.1.1是一个小错误,但是在创建新应用程序时,bundler安装仍然无法正常工作。 现在,经过几次尝试,我试图保持原样,除了尝试安装4.0.5版本之外,不要卸载任何东西。 首先它安装了轨道和轨道4.1.1,然后我收到一个错误:找不到有效的gem’4.0.5’。
我检查了几个问题和答案,试图整天设置它,但它没有成功。 我试着写详细信息,这样你就可以更好地理解,因为有类似的问题,但没有针对我遇到的完全相同的问题。 无论我做了什么,我完成了许多版本4.1.1仍然在文件夹中的gem。 我希望有人知道该怎么做,以及如何删除以前的版本forevr。 提前致谢!
首先找到rails gem目录。
有很多方法可以做到这一点,比如查看你的GEM_HOME
和GEM_PATH
echo $GEM_HOME echo $GEM_PATH
这是一种蛮力的方式:
find / -type d -name rails-4.1.1
这可能会找到多个目录,例如系统的gem目录,缓存,docs,bundler目录,RVM或chruby的ruby版本控制目录等。
如果您是系统的唯一用户,请删除所有这些用户。
立即validation4.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
validationrails 4.1.1不在您的Gemfile中,也不是锁定:
grep 4.1.1 Gemfile Gemfile.lock
如果您正在使用bundler
(强烈推荐),您应该能够为不同的应用程序使用不同版本的gem
–
你试过这个:
在你的
Gemfile
,确保你引用了正确版本的Rails –
gem 'rails', '3.2.0'
在您的app目录中 –
bundle install
–
这将使用bundler为您的应用安装相应的gems,可以根据需要进行更改