2015-02-23 92 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