杰基尔的“--auto”不起作用?

时间:2013-03-23 19:15:36

标签: jekyll

我刚刚重新安装了整个系统,并再次开始处理我的项目。我使用了Jekyll,但仍然使用--auto_config.yml的{​​{1}}自动生成问题。它根本不起作用。 auto: true的输出为:

jekyll --server --auto

Configuration from /home/rafal/Documents/Projects/ruby-adventure/_config.yml Auto-regenerating enabled: /home/rafal/Documents/Projects/ruby-adventure -> /home/rafal/Documents/Projects/ruby-adventure/_site [2013-03-23 19:09:53] regeneration: 1 files changed [2013-03-23 19:09:53] INFO WEBrick 1.3.1 [2013-03-23 19:09:53] INFO ruby 2.0.0 (2013-02-24) [x86_64-linux] [2013-03-23 19:09:53] WARN TCPServer Error: Address already in use - bind(2) [2013-03-23 19:09:53] INFO WEBrick::HTTPServer#start: pid=3288 port=4000 [2013-03-23 19:09:53] regeneration: 1 files changed [2013-03-23 19:09:54] regeneration: 1 files changed [2013-03-23 19:09:54] regeneration: 1 files changed [2013-03-23 19:09:54] regeneration: 1 files changed [2013-03-23 19:09:54] regeneration: 1 files changed [2013-03-23 19:09:54] regeneration: 1 files changed [2013-03-23 19:09:54] regeneration: 1 files changed 的输出是:

jekyll --no-auto --server

...所以不会弹出错误。该网站生成正常,但是当我更改文件时,它不会自动重新生成。有什么想法吗?

2 个答案:

答案 0 :(得分:43)

似乎是由最近对directory_watcher gem的更改引起的。滚动宝石回来为我解决了这个问题:

sudo gem uninstall directory_watcher && sudo gem install directory_watcher -v 1.4.1

答案 1 :(得分:3)

我能够通过按照@lilakai硬锁定directory_watcher gem来解决这个问题,但我采取了不同的方式:

将此行添加到我的gemfile(在开发组中):

gem 'directory_watcher', '1.4'

跑了:

bundle update directory_watcher

我执行此操作后一切正常(因为它将我的版本锁定为1.4,我通过Gemfile.lock确认)。我更喜欢直接通过bundler来管理我的所有宝石,而不是通过系统ruby。

我在本帖时使用最新版本的Octopress(https://github.com/imathis/octopress)遇到了这个问题。