[英]Ruby error: cannot load such file — wdm (LoadError)
我在Windows上遇到了一些與Jekyll有關的重大問題。 我終於開始工作,所以我跑了
jekyll build
然后
jekyll服務 - 觀察
然后我得到以下錯誤,任何人都可以幫忙嗎?
完整的錯誤是:
C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require':
cannot load such file -- wdm (LoadError)
from C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:i
n `require'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/listen-1.3.1/lib/listen/adapter
.rb:207:in `load_dependent_adapter'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/listen-1.3.1/lib/listen/adapter
s/windows.rb:33:in `load_dependent_adapter'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/listen-1.3.1/lib/listen/adapter
.rb:198:in `usable?'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/listen-1.3.1/lib/listen/adapter
s/windows.rb:25:in `usable?'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/listen-1.3.1/lib/listen/adapter
.rb:190:in `usable_and_works?'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/listen-1.3.1/lib/listen/adapter
.rb:57:in `block in select_and_initialize'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/listen-1.3.1/lib/listen/adapter
.rb:55:in `each'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/listen-1.3.1/lib/listen/adapter
.rb:55:in `select_and_initialize'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/listen-1.3.1/lib/listen/listene
r.rb:291:in `initialize_adapter'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/listen-1.3.1/lib/listen/listene
r.rb:283:in `setup'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/listen-1.3.1/lib/listen/listene
r.rb:52:in `start'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-1.4.0/lib/jekyll/command
s/build.rb:56:in `watch'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-1.4.0/lib/jekyll/command
s/build.rb:8:in `process'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-1.4.0/bin/jekyll:97:in `
block (2 levels) in <top (required)>'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/commander-4.1.5/lib/commander/c
ommand.rb:180:in `call'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/commander-4.1.5/lib/commander/c
ommand.rb:180:in `call'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/commander-4.1.5/lib/commander/c
ommand.rb:155:in `run'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/commander-4.1.5/lib/commander/r
unner.rb:402:in `run_active_command'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/commander-4.1.5/lib/commander/r
unner.rb:66:in `run!'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/commander-4.1.5/lib/commander/d
elegates.rb:11:in `run!'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/commander-4.1.5/lib/commander/i
mport.rb:10:in `block in <top (required)>'
我有同樣的問題。 通過設置“Windows目錄監視器”非常簡單地解決了這個問題。
gem install wdm
並在Gemfile中包含以下行:
gem 'wdm'
祝好運!
你好像在一個非常老的listen
gem版本(1.3.1)上運行。 嘗試更新到最新版本(2.4.0)
$ gem update listen
在你的Gemfile
:
require 'rbconfig'
gem 'listen', '~> 2.4'
gem 'wdm', '>= 0.1.0' if RbConfig::CONFIG['target_os'] =~ /mswin|mingw|cygwin/i
添加了gem wdm,因為我不確定listen gem是否會自己需要它,但是因為readme聲明這是可選的,否則它將回退到輪詢,這是一種效率較低的方法。
這篇博文說:
# If you get the following error with the –watch option
C:/Ruby193/lib/ruby/gems/1.9.1/gems/listen-1.3.1/lib/listen/adapter.rb:207:in `require': cannot load such file -- wdm (LoadError)
# To fix that error, open the gemfile in your jekyll project directory and add these two lines:
require 'rbconfig'
gem 'wdm', '>= 0.1.0' if RbConfig::CONFIG['target_os'] =~ /mswin|mingw/i
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.