我的Rails 4.1.8 Gemfile中有puma
gem,因为我想将它用作所有环境中的默认Web服务器。这很好。
# Gemfile
gem "puma"
在开发中我使用的是mailcatcher
,这意味着我希望将它作为依赖项包含在我的Gemfile中。
# Gemfile
group :development do
gem "mailcatcher"
end
这会导致默认网络服务器设置为thin
。这似乎是mailcatcher的意外后果,但它提出了一个具体的问题。 我可以创建一个捆绑服务器服从安装Gems的组,但是Rails会忽略吗?我尝试过这样的东西但是Rails仍在加载包含的宝石。
# Gemfile
group :mailcatcher do
gem "mailcatcher"
end
答案 0 :(得分:0)
您可以使用别名rails s
命令...例如export alias rs="rails server puma"
,现在rs
将启动puma
。这样你可以自由使用你想要的任何网络服务器)
如果你想让它真的是默认的,你可以添加这样的东西
require 'rack/handler'
Rack::Handler::WEBrick = Rack::Handler.get(:puma)
到rails
脚本。
答案 1 :(得分:0)
我不知道这是否有效,但是:
gem "mailcatcher", :require => false
答案 2 :(得分:0)
Mailcatcher specifically states to not put it in your Gemfile。
请不要将mailcatcher放入Gemfile。它会在某些时候与您的应用程序宝石发生冲突。
相反,在README中弹出一条说明您使用mailcatcher的注释。只需运行gem install mailcatcher,然后运行mailcatcher即可开始使用。