2013-12-08 23 views
8

Ho avuto alcuni problemi importanti con Jekyll su Windows. Ho finalmente farlo funzionare così ho eseguitoErrore di Ruby: impossibile caricare tale file - wdm (LoadError)

jekyll build

Poi

jekyll serve --watch

allora ottengo il seguente errore, qualcuno può aiutarmi?

L'errore completo è:

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)>' 

risposta

8

Lei sembra essere in esecuzione su una versione molto vecchia della listen gemma (1.3.1). Provare ad aggiornare al più recente (2.4.0)

$ gem update listen 

Nel vostro Gemfile:

require 'rbconfig' 

gem 'listen', '~> 2.4' 
gem 'wdm', '>= 0.1.0' if RbConfig::CONFIG['target_os'] =~ /mswin|mingw|cygwin/i 

Aggiunto il WDM gemma dal momento che non sono sicuro se la gemma ascolto sarà require it by itself ma come il readme afferma che questo è facoltativo, altrimenti riporterà al polling che è un modo meno efficiente di farlo.

+0

Dicendo questo, però, eseguendo di nuovo l'orologio dopo quella linea, e sto ancora ricevendo l'errore. Strano, ha funzionato un attimo fa. Sembra che pensi di non riuscire a trovare wdm nonostante siano presenti due linee. – Doidgey

+0

'bundle exec jekyll serve --watch' –

+1

Aha, penso che l'abbia fatto! rispetta l'uomo. – Doidgey

3

This blog post dice:

# 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 
+1

Grazie per questo :) – Doidgey

10

Ho avuto lo stesso problema. Risolto il problema molto semplicemente impostando "Windows Directory Monitor".

gem install wdm 

per inserire questa riga nel Gemfile:

gem 'wdm' 

Buona fortuna!

+3

Ha funzionato per me ... – user1429980

+0

Ha funzionato anche per me! Grazie. –

Problemi correlati