6

新しい Macbook でOctopress (Jekyll 上のブログ エンジン)を使用しようとしていますが、実行すると次のエラーが発生しますbundle exec jekyll --server

(短縮パス)

/path/to/markdown.rb:118:in `to_html': wrong argument type String (expected Array) (TypeError)
from /path/to/markdown.rb:118:in `convert'
...

(フルパス)

/usr/local/rvm/gems/ruby-1.9.2-p290/gems/jekyll-0.11.0/lib/jekyll/converters/markdown.rb:118:in `to_html': wrong argument type String (expected Array) (TypeError)
from /usr/local/rvm/gems/ruby-1.9.2-p290/gems/jekyll-0.11.0/lib/jekyll/converters/markdown.rb:118:in `convert'
...

118行目を見ると、次のようになります。

RDiscount.new(content, *@rdiscount_extensions).to_html

この行を「hello」などの文字列に置き換えると、サーバーは正常に起動します。しかし、のようなものに置き換えるとRDiscount.new("hello").to_html、同じエラーが発生します。ただし、irb を起動して実行すると問題なく動作RDiscount.new("hello").to_htmlします。

何が問題なのですか?私が持っている別のコンピューターでサーバーを起動することはできますが、2 つのコンピューターが実行していることの違い (どこかのライブラリの異なるバージョンですか?) を理解する方法がわかりません。

4

3 に答える 3

3

ちょっと考えただけですが、gemset を更新してみましたか? jekyll の最新バージョンは 0.11.2 で、デフォルトで RDiscount の代わりに maruku を使用します。

https://github.com/mojombo/jekyll/wiki/Install

于 2012-04-18T15:19:12.603 に答える
1

私が最初にすることは、すべてのバージョンをチェックすることです。ruby -v、gem -v、gem list -d sinatra、gem list-doctopress。などと違いを探します。

于 2012-04-23T09:10:37.360 に答える
0

私もこのエラーを抱えていました。新しい RVM gemset を作成し、bundle install を再実行することで解決しました。

https://github.com/rtomayko/rdiscount/issues/66も参照してください。

$ rvm gemset create gaga
'gaga' gemset created (/Users/chaffee/.rvm/gems/ruby-1.9.3-p125@gaga).
$ rvm use @gaga
Using /Users/chaffee/.rvm/gems/ruby-1.9.3-p125 with gemset gaga
$ bundle install
...
Installing rdiscount (1.6.8) with native extensions 
...
$ irb
>> require 'rdiscount'
=> true
>> RDiscount.new("hello").to_html
=> "<p>hello</p>\n"
于 2012-05-21T21:45:37.577 に答える