2013-01-08 274 views
0

我在嘗試在本地運行Jekyll --server時遇到問題。我收到以下錯誤,我無法解密:Jekyll - 服務器無法正常工作

/Users/jgindi/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/1.9.1/rubygems/custom_require.rb:55:in 'require': iconv will be deprecated in the future, use String#encode instead. 
Configuration from /Users/jgindi/Desktop/Codestuffs/julian25.github.com/_config.yml 
/Users/jgindi/.rvm/gems/ruby-1.9.3-p125/gems/directory_watcher-1.4.1/lib/directory_watcher/em_scanner.rb:10:in `block in <top (required)>': undefined method 'kqueue' for EventMachine:Module (NoMethodError) 

我不明白是什麼問題?

+0

你可以發佈你的_config.yml嗎?你似乎沒有使用'--auto'選項,所以我不知道爲什麼你會從目錄觀察者得到一個錯誤。 –

+0

這是我_config.yml: 降價:rdiscount Pygments來做:真 永久鏈接:/職位/:標題 汽車:真正 rdiscount: 擴展:[智能] – Julian25

回答

3

由於您使用RVM,爲你的博客創建一個新的寶石,並確保你安裝EV在那個寶石中加入。 directory_watcher中的Eventmachine支持是實驗性的。當我使用GitHub的博客源代碼創建空白gemset時,我無法重現您看到的錯誤。

1

這可能是因爲你已經有一些本地主機上運行

在終端

lsof -i TCP:3000 

3000輸入這是你使用的端口號,因此可能會4000例如。

它會返回這樣的事情

joshuahornby ~/workspace/myBlog/ (master) 
→ lsof -i TCP:3000 
COMMAND PID USER  FD  TYPE  DEVICE  SIZE/OFF NODE NAME 
ruby 68780 renaebair 6u IPv4  0x10898278  0t0  TCP  *:hbci (LISTEN) 

抓住進程號(又稱PID)(在這種情況下,它是68780),然後鍵入「殺#{that_pid}」:

kill 68780 

然後嘗試連接到--server

+0

我使用的代碼上面列出但沒有露面嘗試對於端口3000或4000. – Julian25

+0

你用什麼端口來運行jekyll?那就是你應該使用的端口。例如,我使用jekyll --server 4000 --auto您可以使用1000.它只是您使用的端口號。 – joshuahornby10

0

其中一些可能是由於舊的eventmachine版本。

當我遇到eventmachine-0.12.10時遇到了這個問題。重新安裝eventmachine把我帶到了1.0.3,之後jekyll開始罰款。