如何使用 Bundler 添加 gem
Posted
技术标签:
【中文标题】如何使用 Bundler 添加 gem【英文标题】:How to add a gem using Bundler 【发布时间】:2012-02-17 14:07:23 【问题描述】:错误:回形针不是捆绑包的一部分。将其添加到 Gemfile。 (Gem::LoadError)
要在捆绑列表中添加paperclip
gem,我尝试了以下方法:
bundle install paperclip
但又出现错误:
您的捆绑包已完成!它已安装到 ./paperclip 不推荐使用 bundle install 的路径参数。它将在 1.1 版中删除。请改用 bundle install --path 回形针。
请帮助我。
【问题讨论】:
【参考方案1】:另一种将 gem 添加到包中的方法是运行:
bundle add paperclip
bundle add
命令似乎从 Bundler v1.15 开始支持。
当您运行 bundle add
时,请求的 gem 会添加到 Gemfile 中,并且 bundle install
会自动执行,因此您不必自己运行它。
【讨论】:
如果您希望 Bundler 指定安装在 Gemfile 中的 gem 的确切版本,请在此命令末尾使用--strict
,例如 bundle add paperclip --strict
。我强烈建议这样做以避免将来出现任何意外。【参考方案2】:
在您喜欢的文本编辑器中打开Gemfile
。添加行gem 'paperclip'
。然后运行bundle install
【讨论】:
john douthat 我做了你所说的,发生了以下情况:你的包是完整的!它被安装到 ./paperclip 中。但是里面没有捆绑回形针宝石 我希望将回形针宝石放在我的 Gemfie.lock 中 当您之前运行bundle install paperclip
时,它认为您想将 Gemfile gem 安装到一个名为回形针的文件夹中。它认为您不想安装回形针 gem。要解决此问题,请删除 .bundle/config
文件,这是 bundler 记住要安装到哪个文件夹的位置,并删除 paperclip
文件夹,只是为了清理。然后运行bundle install
(不是bundle install paperclip
)让事情恢复正常。希望有帮助!
如果这对您不起作用,请将您的 Gemfile 的内容发布到问题中。以上是关于如何使用 Bundler 添加 gem的主要内容,如果未能解决你的问题,请参考以下文章
使用 bundler,如何解压通过 git 存储库安装的 gem?
在开发过程中如何配置 Bundler/Gemfile 以使用不同的 gem 源?