2015-02-23 57 views
0

是否有可以添加到Ruby gem的逻辑,以便在Windows上运行时不会进行绑定?我正在使用独角兽gem开发一个项目,我想将它保留在gemfile中,但在Windows操作系统上运行服务器时忽略它。在特定平台上运行Ruby gem

+0

也许这可以通过以下方式进行:在定义一个新的环境Gemfile,只将gem添加到该环境中,将服务器设置为在该环境下运行。 – Patrick 2015-02-23 23:04:07

回答

0

如果你想从Windows中排除它,你基本上必须白名单平台。我通常使用:

gem 'my_gem' , '~> 1.2.3' , :platforms => [ :ruby ] 

如果您正在使用JRuby,或者一些你可能需要从可用的格式this list改变它:

ruby 
    C Ruby (MRI) or Rubinius, but NOT Windows 
ruby_18 
    ruby AND version 1.8 
ruby_19 
    ruby AND version 1.9 
mri 
    Same as ruby, but not Rubinius 
mri_18 
    mri AND version 1.8 
mri_19 
    mri AND version 1.9 
rbx 
    Same as ruby, but only Rubinius (not MRI) 
jruby 
    JRuby 
mswin 
    Windows 
mingw 
    Windows 'mingw32' platform (aka RubyInstaller) 
mingw_18 
    mingw AND version 1.8 
mingw_19 
    mingw AND version 1.9