2013-01-08 65 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开始罚款。