Подтвердить что ты не робот

Jekyll - Ошибка запуска "Jekyll Serve"

EDIT: Найден ответ (см. мой ответ ниже!). Это предполагает использование версии 1.4.2 вместо 1.4.3, поэтому, если у кого-нибудь есть идеи по работе 1.4.3, это тоже может быть полезно. Спасибо!

РЕДАКТИРОВАТЬ 2: Благодаря комментарию ниже, похоже, что 1.4.3 имеет проблемы при работе в Windows. https://github.com/jekyll/jekyll/issues/1948

Я только что установил jekyll на свой компьютер с Windows 7. У меня есть рубин, установленный вместе с Dev-пакетом.

Я выполнил gem install jekyll и завершил это с успехом. Я создал новый сайт в соответствии с документацией jekyll.

Проблема, которую я испытываю, возникает, когда я пытаюсь запустить jekyll serve. Ниже приведен вывод ошибки.

PS C:\jekyll\test-site> jekyll serve --trace
Configuration file: C:/jekyll/test-site/_config.yml
        Source: C:/jekyll/test-site
   Destination: C:/jekyll/test-site/_site
  Generating... C:/Ruby193/lib/ruby/1.9.1/fileutils.rb:247:in `mkdir': Invalid argument - C:/jekyll/test-site/_site/C: (Errno::EINVAL)
    from C:/Ruby193/lib/ruby/1.9.1/fileutils.rb:247:in `fu_mkdir'
    from C:/Ruby193/lib/ruby/1.9.1/fileutils.rb:221:in `block (2 levels) in mkdir_p'
    from C:/Ruby193/lib/ruby/1.9.1/fileutils.rb:219:in `reverse_each'
    from C:/Ruby193/lib/ruby/1.9.1/fileutils.rb:219:in `block in mkdir_p'
    from C:/Ruby193/lib/ruby/1.9.1/fileutils.rb:205:in `each'
    from C:/Ruby193/lib/ruby/1.9.1/fileutils.rb:205:in `mkdir_p'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/lib/jekyll/convertible.rb:168:in `write'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/lib/jekyll/site.rb:259:in `block in write'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/lib/jekyll/site.rb:397:in `block (2 levels) in each_site_file'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/lib/jekyll/site.rb:396:in `each'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/lib/jekyll/site.rb:396:in `block in each_site_file'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/lib/jekyll/site.rb:395:in `each'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/lib/jekyll/site.rb:395:in `each_site_file'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/lib/jekyll/site.rb:259:in `write'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/lib/jekyll/site.rb:41:in `process'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/lib/jekyll/command.rb:18:in `process_site'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/lib/jekyll/commands/build.rb:23:in `build'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/lib/jekyll/commands/build.rb:7:in `process'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-1.4.3/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/command.rb:180:in `call'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/commander-4.1.5/lib/commander/command.rb:180:in `call'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/commander-4.1.5/lib/commander/command.rb:155:in `run'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/commander-4.1.5/lib/commander/runner.rb:402:in `run_active_command'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/commander-4.1.5/lib/commander/runner.rb:78:in `run!'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/commander-4.1.5/lib/commander/delegates.rb:11:in `run!'
    from C:/Ruby193/lib/ruby/gems/1.9.1/gems/commander-4.1.5/lib/commander/import.rb:10:in `block in <top (required)>

Я огляделся, но новичок в рубине, поэтому я понятия не имею, что искать или как найти здесь ошибку. Любая помощь будет очень полезна.

Спасибо,

Джо

4b9b3361

Ответ 1

Отвечая на мой вопрос, мне удалось найти решение.

Это, похоже, проблема с Jekyll версии 1.4.3. Чтобы исправить проблему, я удалил jekyll и установил версию 1.4.2.

gem uninstall jekyll

gem install jekyll --version "=1.4.2"

Выполнение этого и все должно работать нормально, если у вас есть такая же проблема, как и я в окнах.

Я предполагаю, что это потому, что версия 1.4.3 является новой (выпущена 13-го) и неустойчива в окнах.

Ответ 2

Просто наткнулся на ту же проблему с плагином Jekyll "Генератор статистики рубрики" (https://github.com/shigeya/jekyll-category-archive-plugin)

Скорее всего у вас есть плагин - в папке _plugins - который использует метод File.join(). например File.join('/', dest, @dir, @category_dir_name, 'index.html')

Измените это, удалив первый элемент, оставляя вас с File.join(dest, @dir, @category_dir_name, 'index.html')

Ответ 3

У меня была та же проблема на Ubuntu Precise 12.04. Проблема заключалась в том, что у меня был установлен ruby1.8. У меня также был установлен ruby1.9.1. Я удалил ruby1.8, а затем Jekyll установил штраф.