首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >从rails3项目中卸载gem的最佳方法是什么?

从rails3项目中卸载gem的最佳方法是什么?
EN

Stack Overflow用户
提问于 2011-01-12 17:34:55
回答 5查看 131.2K关注 0票数 102

我通过Gemfile使用bundler安装了我所有的gem。我认为(错误地)如果我从Gemfile中删除了一个gem并运行'bundle install‘,那么删除的gem就会被卸载。我已经查看了bundler帮助文件,据我所知,它没有卸载gem的方法。

我只需要使用gem uninstall x就可以了吗?这会让bundler感到困惑吗?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-01-12 18:52:39

Bundler是从应用程序的根目录启动的,因此它确保存在所有需要的gem来获取您的应用程序working.If出于某些原因,您不再需要gem您必须运行

代码语言:javascript
复制
    gem uninstall gem_name 

正如您声明的那样,每次运行bundler时,above.So都会重新检查依赖项

编辑- 24.12.2014

我看到人们不断地来问这个问题,我决定添加一些东西。我给出的答案是当你在全球范围内维护你的gem时。考虑使用诸如rbenv或rvm之类的gem管理器来将gem集限定在特定项目的范围内。

这意味着不会在全局级别安装任何gem,因此,当您从项目的Gemfile中删除一个gem并重新运行bundle时,它显然不会加载到您的项目中。然后,您可以运行bundle clean (使用项目目录),它将从系统中删除所有曾经从Gemfile (位于同一目录中)安装的gem,但此时不再列出这些gem……长话短说-它删除了未使用的宝石。

票数 137
EN

Stack Overflow用户

发布于 2019-04-15 22:19:05

Bundler现在有了一个bundle remove GEM_NAME命令(从v1.17.0, 25 October 2018开始)。

票数 2
EN

Stack Overflow用户

发布于 2012-01-06 23:42:29

您必须使用'gem uninstall gem_name‘卸载gem。

请注意,如果您在系统范围内安装了gem (即,sudo bundle install),然后您可能需要使用-n选项指定二进制目录,以确保删除属于gem的二进制文件。例如

代码语言:javascript
复制
sudo gem uninstall gem_name  -n /usr/lib/ruby/gems/1.9.1/bin
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4667150

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档