卸载带有依赖项的Rails 3?

Tre*_*ham 10 rubygems ruby-on-rails-3

我喜欢Rails 3易于安装:gem install rails --pre并且所有依赖项都会自动为您安装.但是,卸载它呢?如果我这样做gem uninstall rails,我仍然有

actionmailer (3.0.0.beta3)
actionpack (3.0.0.beta3)
activemodel (3.0.0.beta3)
activerecord (3.0.0.beta3)
activeresource (3.0.0.beta3)
activesupport (3.0.0.beta3)
Run Code Online (Sandbox Code Playgroud)

我想摆脱它.最简单的方法是什么?

sai*_*sai 14

如果您计划升级到更新版本的rails,您可以:

sudo gem clean
Run Code Online (Sandbox Code Playgroud)

或者在较新的版本中

sudo gem cleanup
Run Code Online (Sandbox Code Playgroud)

安装新版本后,卸载所有旧版本的所有宝石,只留下系统中的最新版本.

注意:这些天我使用RVM gemset和/或bundler来管理我的宝石,如果你正在使用RVM,我发现它更简单.例如,您可以为每个项目创建一个新的gemset:

rvm gemset create project_name
rvm gemset use project_name
bundle install
Run Code Online (Sandbox Code Playgroud)

出现问题你可以删除gemset并重新开始

rvm gemset delete project_name
Run Code Online (Sandbox Code Playgroud)

  • 这不是这个问题的答案.`gem clean`,现在`gem cleanup`,只删除旧版本的宝石.例如,假设您正在从Rails X升级到Rails Y,而Rails X依赖于Foo,但Rails Y则没有.第一次执行`gem install rails`时,Rails X与gem Foo一起安装.下次你执行`gem install rails`时,会安装Rails Y. 然后,你做'宝石清理'.即使Rails Y不使用它,Foo gem也会留在你的系统上.带有依赖关系的真正`gem uninstall rails`也会删除Foo gem. (5认同)