7

我遵循了Octopress 文档中的所有说明:

sddhrthrt@thinkpad:~/octopress$ rake generate
## Generating Site with Jekyll
directory source/stylesheets/ 
   create source/stylesheets/screen.css 
Configuration from /home/sddhrthrt/octopress/_config.yml
/home/sddhrthrt/octopress/plugins/pygments_code.rb:5: 
      warning: already initialized constant PYGMENTS_CACHE_DIR
/home/sddhrthrt/octopress/plugins/render_partial.rb:25:in `require':
             ./plugins/octopress_filters.rb:69: undefined (?...) sequence:
              /<div class="entry-content">(?<content>[\s\S]*?)<\/div>\s*<(footer|\/article)>/ (SyntaxError)
        from /home/sddhrthrt/octopress/plugins/render_partial.rb:25
        from /var/lib/gems/1.8/gems/jekyll-0.11.2/bin/../lib/jekyll/site.rb:76:in `require'
        from /var/lib/gems/1.8/gems/jekyll-0.11.2/bin/../lib/jekyll/site.rb:76:in `setup'
        from /var/lib/gems/1.8/gems/jekyll-0.11.2/bin/../lib/jekyll/site.rb:75:in `each'
        from /var/lib/gems/1.8/gems/jekyll-0.11.2/bin/../lib/jekyll/site.rb:75:in `setup'
        from /var/lib/gems/1.8/gems/jekyll-0.11.2/bin/../lib/jekyll/site.rb:30:in `initialize'
        from /var/lib/gems/1.8/gems/jekyll-0.11.2/bin/jekyll:224:in `new'
        from /var/lib/gems/1.8/gems/jekyll-0.11.2/bin/jekyll:224
        from /usr/local/bin/jekyll:19:in `load'
        from /usr/local/bin/jekyll:19

sddhrthrt@thinkpad:~/octopress$ rake preview
Starting to watch source with Jekyll and Compass. Starting Rack on port 4000
rake aborted!
undefined method `spawn' for Process:Module

Tasks: TOP => preview
(See full trace by running task with --trace)

sddhrthrt@thinkpad:~/octopress$ rake watch
Starting to watch source with Jekyll and Compass.
rake aborted!
undefined method `spawn' for Process:Module

Tasks: TOP => watch
(See full trace by running task with --trace)

我承认,我从来没有研究过 Ruby。因此,我不太愿意解读错误。谷歌搜索也没有产生任何我能理解的东西。

编辑:

所以在答案中提到,我安装了 rbenv 然后ruby 1.9.3-p327. 我回来~/octopress跑了bundle install,它说所有的 gem 都已经安装了(当我有 ruby​​ 1.8x 时我已经安装了)。现在 rake 给了我这个错误:

sddhrthrt@thinkpad:~/octopress$ rake --trace
rake aborted!
cannot load such file -- bundler/setup
/home/sddhrthrt/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
/home/sddhrthrt/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
/home/sddhrthrt/octopress/Rakefile:2:in `<top (required)>'
/home/sddhrthrt/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rake/rake_module.rb:25:in `load'
/home/sddhrthrt/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rake/rake_module.rb:25:in `load_rakefile'
/home/sddhrthrt/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rake/application.rb:501:in `raw_load_rakefile'
/home/sddhrthrt/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rake/application.rb:82:in `block in load_rakefile'
/home/sddhrthrt/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rake/application.rb:133:in `standard_exception_handling'
/home/sddhrthrt/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rake/application.rb:81:in `load_rakefile'
/home/sddhrthrt/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rake/application.rb:65:in `block in run'
/home/sddhrthrt/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rake/application.rb:133:in `standard_exception_handling'
/home/sddhrthrt/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rake/application.rb:63:in `run'
/home/sddhrthrt/.rbenv/versions/1.9.3-p194/bin/rake:32:in `<main>'

我应该使用捆绑所有宝石重新安装吗?我无法理解。

4

3 回答 3

3

试试看嘛

$ rvm use 1.9.3

在您网站的根文件夹中。注意,1.9.3是你的 Ruby 版本。

然后我想当你跑步时

$ rake watch

或者

$ rake preview

现在可以工作了。


编辑:

因此,对于rbenv,请尝试:

$ rbenv global 1.9.3-p327

或者你可以local改用。

于 2012-12-09T06:08:55.307 回答
1

您是否错过了 rbenv 配置的第 3 步?

$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile

https://github.com/sstephenson/rbenv/#rbenv-shell

于 2013-04-15T03:22:24.943 回答
1

我想问题出在过时的 Ruby 上。根据这个:https://github.com/imathis/octopress/issues/142你应该在 Ruby 1.9 上(稳定版本现在是 1.9.3-p327)。您可以直接从 Ruby 站点获取它,但我建议使用 RVM(或 rbenv)来设置您的 Ruby 环境。

您可以在此处找到如何在您的盒子上安装 RVM 的指南:https ://rvm.io/rvm/install/

然后安装 Ruby 1.9.3 将非常简单:

rvm install 1.9.3
rvm --default 1.9.3
rvm reload

然后,您必须在 Octopress 根目录中安装所有依赖项bundle install(以获取bundler: )。gem install bundler

编辑:

同样.rvmrc在 Octopress 的项目根目录中说它需要 Ruby 1.9.3:https ://github.com/imathis/octopress/blob/master/.rvmrc

于 2012-12-08T18:09:54.150 回答