2013-03-23 23 views
14

Tüm sistemimi yeniden yükledim ve projelerim üzerinde tekrar çalışmaya başladım. Bazıları Jekyll'i kullandım ve yine de kullanıyorum, ancak --auto veya _config.yml_config.yml'un auto: true'u kullanarak otomatik üretimle ilgili bir problemim var. Sadece işe yaramıyor. jekyll --server --auto için çıktıdır: jekyll --no-auto --server denJekyll'nin "--auto" çalışmıyor mu?

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 

çıktısı:

Configuration from /home/rafal/Documents/Projects/ruby-adventure/_config.yml 
Building site: /home/rafal/Documents/Projects/ruby-adventure -> /home/rafal/Documents/Projects/ruby-adventure/_site 
Successfully generated site: /home/rafal/Documents/Projects/ruby-adventure -> /home/rafal/Documents/Projects/ruby-adventure/_site 
[2013-03-23 19:12:31] INFO WEBrick 1.3.1 
[2013-03-23 19:12:31] INFO ruby 2.0.0 (2013-02-24) [x86_64-linux] 
[2013-03-23 19:12:31] WARN TCPServer Error: Address already in use - bind(2) 
[2013-03-23 19:12:31] INFO WEBrick::HTTPServer#start: pid=3327 port=4000 

... yani hiçbir hata açılır. Site iyi bir şekilde üretiyor ancak bir dosyayı değiştirdiğimde otomatik olarak yeniden oluşturulmuyor. Herhangi bir fikir neden?

+0

Yup, çoğaltabilir. Dosya değiştikten sonra sunucunun yeniden başlatılması gerekebilir, aksi halde değişiklikler kaldırılmaz. Git GitHub proje sayfasındaki bir hatayı dosyalayın. –

+0

Hangi Jekyll sürümünü kullanıyorsunuz? 0.12.1? Onu kullandım ve doğru bir şekilde çalıştı, yani izlediğiniz bir dosyayı düzenledikten ve kaydettikten sonra yeniden üretir. 'Jekyll --no-auto --server' sonucu 'regenation: 1 files changed' ifadesini içermemelidir. – agarie

+0

Aynı sorunu 0.12.1 ile alın. Ne tuhaf olsa da, '_config.yml' yi kaydettiğimde, aniden başka bir yerde yapılan tüm değişiklikleri alır ve dosyaları gerektiği gibi yeniden oluşturur. Aynı şeyi alan var mı? – simonrohrbach

cevap

43

Directory_watcher gemindeki son değişikliklerden kaynaklanıyor gibi görünüyor. Benim için geri mesele mücevher sabit alınıyor:

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

Yup, benim için de tamir ettim. Teşekkürler! – simonrohrbach

+0

Teşekkürler; harika çalıştı. – raf

+0

bu çalıştı, ama artık hiçbir dosya kaydedilmeden "5 dosya değiştirildi" üzerinde sonsuz döngüleri. fikir? –

3

ben bunu düzeltebilirsiniz başardı sert kilitleme @lilakai göre directory_watcher mücevher, ama ben farklı bir şekilde yaptı:

Eklendi bu hat

gem 'directory_watcher', '1.4' 

Ve ran: my gemfile için (geliştirme grubu içinde)

bundle update directory_watcher 

Her şey bir kez ben bunu yaptım (sürüm 1.4, benim Gemfile.lock ile onayladı) kilitlendi. Tüm taşlarmı doğrudan sistem yakutundan ziyade paketleyici yoluyla yönetmeyi tercih ederim.

Bu gönderi sırasında en son Octopress (https://github.com/imathis/octopress) sürümünü kullanarak bu soruna girdim.

+0

Tanrı, bu sadece "rake watch" loop hatayı düzeltmek için teşekkür ederiz. Directory_watcher'ımı 1.4.4 olarak ayarlıyorum – Backus