无法激活 thin (~> 1.5.0),已经激活 thin-1.7.0

can't activate thin (~> 1.5.0), already activated thin-1.7.0

我在 Rails 应用程序中使用 Mail Catcher,当我尝试启动服务器或 运行 rake db:migrate 时,出现以下错误。

/Users/harshamv/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/bundler-1.13.2/lib/bundler/rubygems_integration.rb:346:in `block (2 levels) in replace_gem': can't activate thin (~> 1.5.0), already activated thin-1.7.0. Make sure all dependencies are added to Gemfile. (Gem::LoadError)

我遇到过类似的问题,我并不是很喜欢让 Mailcatcher 特定的 gem 污染我的开发环境的想法。所以我选择了另一种解决方案:在 docker 容器中使用 Mailcatcher。

因为我对我发现的容器不是很满意,所以我创建了一个基于 Alpine 的容器来限制它的占用空间(~36MB)。它使用起来非常简单,可以保护您免受此类问题的困扰。

更一般地说,将容器用于 Rails(或其他编程语言)是一个好主意,因为它可以创建隔离环境并使您的开发、测试、暂存和生产环境保持一致。

您可以在同一页面上找到我的剪辑 here 和 "how-to"。