Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby Octopress错误-rake预览、查看或生成_Ruby_Rake_Jekyll_Rakefile_Octopress - Fatal编程技术网

Ruby Octopress错误-rake预览、查看或生成

Ruby Octopress错误-rake预览、查看或生成,ruby,rake,jekyll,rakefile,octopress,Ruby,Rake,Jekyll,Rakefile,Octopress,我遵循了以下所有说明: 及 我承认,我从来没有研究过Ruby。因此,我不太愿意解读这些错误。谷歌搜索也没有产生任何我能理解的东西 编辑: 在回答中提到,我安装了rbenv,然后安装了ruby 1.9.3-p327。我回到~/octopress并运行了bundle install,它说所有的gems都已经安装好了(我在使用ruby 1.8x时已经安装好了)。现在rake给了我这个错误: sddhrthrt@thinkpad:~/octopress$ rake --trace rake aborte

我遵循了以下所有说明:

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

编辑:

在回答中提到,我安装了rbenv,然后安装了ruby 1.9.3-p327。我回到
~/octopress
并运行了
bundle install
,它说所有的gems都已经安装好了(我在使用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>'
sddhrthrt@thinkpad:~/octopress$rake--跟踪
雷克流产了!
无法加载这样的文件--捆绑程序/安装程序
/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`'
/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:在“标准异常处理”中
/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:在“标准异常处理”中
/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`'

我应该重新安装所有的宝石吗?我不明白。

我想问题在于过时的Ruby。根据这一点:您应该使用Ruby 1.9(稳定版本现在是1.9.3-p327)。您可以直接从Ruby站点获得此信息,但我建议使用RVM(或rbenv)来设置您的Ruby环境

您可以在此处找到如何在机箱上安装RVM的指南:

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

rvm install 1.9.3
rvm --default 1.9.3
rvm reload
然后,您必须使用Octopress根目录中的
bundle install
(获取
bundler
gem install bundler
)安装所有依赖项

编辑:

另外,Octopress项目根目录中的
.rvmrc
表示它需要Ruby 1.9.3:

试试看

$ rvm use 1.9.3
在站点的根文件夹中。注意,
1.9.3
是您的Ruby版本

然后我想当你跑的时候

$ rake watch

现在可以了


编辑: 因此,对于
rbenv
,请尝试:

$ rbenv global 1.9.3-p327

或者您可以使用
local

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

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

您有什么Ruby版本?(编辑:我注意到您有1.8.X)我已将更改放在问题中。您是否尝试过使用
bundle exec运行任务?例如
bundle exec rake preview
。我没有使用rvm。我使用rbenv安装新的ruby@SiddharthaRT你可以试试rbenv global 1.9.3-p327,我已经试过了。问题是,当我做
构建exec rake
时,它使用
Ruby 1.8
@Siddhartart
Ruby-v
中的二进制文件来检查实际使用的版本是什么?好吧,在做了很多杂耍之后,我想我已经把我的comp中的整个Ruby设置搞砸了。当我运行ruby时,我现在遇到了这个错误-
:1:in
require':无法加载这样的文件--rubygems.rb(LoadError)from:1:in
$ rake watch
$ rake preview
$ rbenv global 1.9.3-p327
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile