2014-01-15 25 views
18

EDIT:答えを見つけました(下記の私の答えを見てください)。 1.4.3の代わりにバージョン1.4.2を使用しているので、誰かが1.4.3を稼働させるためのアイデアがあれば、それも役立ちます。ありがとう!ジキル - 'Jekyll Serve'を実行中のエラー

編集2:以下のコメントのおかげで、1.4.3はWindowsで動作しているときに問題があるようです。 https://github.com/jekyll/jekyll/issues/1948

私はちょうど私のWindows 7コンピュータにjekyllをセットアップしました。私はdevパッケージと一緒にインストールされたルビーを持っています。

私はgem install 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)> 

私は周りを見回しましたが、ルビーの初心者ですので、何を探すべきか、どのようにエラーを見つけるかはわかりません。どんな助けでも大いに訴えられるでしょう。 _pluginsフォルダに - - ある

おかげで、

ジョー

+0

新しいサイト「testsite」(ダッシュなし)を試すことができますか? – svoop

+0

提案してくれてありがとう@svoop私はそれを行ったが運がない、同じエラー。 – Joe

+0

同じ問題は 'ジキルビルド'でも発生します。 – Jesslyn

答えて

39

であなたを残して最初の要素を削除することによって、これを変更し、私は解決策を見つけることができました。

これはJekyllバージョン1.4.3の問題であるようです。問題を解決するために、私はjekyllをアンインストールし、バージョン1.4.2をインストールしました。これを行う

gem uninstall jekyll

gem install jekyll --version "=1.4.2"

およびWindows上で私と同じ問題を持っている場合、すべてが正常に動作する必要があります。

バージョン1.4.3は新しく(13日にリリースされた)、ウィンドウでは不安定であると思います。

+2

Thanks Joe。 FWIW私はジキルを使って自分のギブスページをプッシュする前にそれをプレビューしようとしていました。これは、指示に従って、Gemfile.Lockという生成ファイルにあるJekyllへの参照を変更する必要があることを意味していました。私はこれをやった後、私のためにローカルで働き始めました。 –

+1

@RoryBecker私は 'build'と' serve'することができますが、 'serve -watch'は私にエラーを投げます。これは何とかあなたが言ったことと関連していますか? Gemfile.Lock-fileにはjekyllへの参照が見つかりませんでした。 – kleinfreund

+0

私は 'jekyll serve -watch'と同じ問題を抱えていました。あなたはそれのためにいくつかの宝石をインストールする必要があります。私はこの宝石を「リスナー」と呼んでいると思っていますが、私はそれを100%確信していません。 – Joe

0

ちょうどほとんどのプラグインを持っているジキルのプラグイン「カテゴリーアーカイブジェネレータ」と同じ問題を越え(https://github.com/shigeya/jekyll-category-archive-plugin

が来ましたFile.join()メソッドを使用します。例えばFile.join('/', dest, @dir, @category_dir_name, 'index.html')

自分の質問に答えるFile.join(dest, @dir, @category_dir_name, 'index.html')

+0

答えをありがとう、残念ながら私は全くプラグインがインストールされていません。 _pluginsフォルダはそこにはなく、私は新しくインストールされています。 – Joe

+1

前回の回答とhttps://github.com/jekyll/jekyll/issues/1948で、私は原因が1.4.3であることを確認しています。 – serverdude

+0

私は宝石、すなわち 'C:/ Ruby193/lib/ruby​​/gems/1.9.1/gems/jekyll-1.4.3/lib/jekyll /'のソースコードを見てきました。 'post.rb'と' page.rb'の 'destination'メソッドは、GitHub https://github.com/jekyll/jekyll/blob/master/lib/jekyll/post.rbとhttps:// githubのものと一致します。com/jekyll/jekyll/blob/master/lib/jekyll/page.rb あなたが宝石の内部を交換する場合、1.4.3が動作します。 'convertible.rb'に正しいメソッドを追加すると' post.rb'と 'page.rb'のメソッドを削除することができます – serverdude

0

私はUbuntu Precise 12.04でも同じ問題がありました。問題は私がruby1.8をインストールしたことでした。私もruby1.9.1をインストールしました。私はruby1.8を削除し、その後Jekyllはうまくインストールされました。

関連する問題