当我试图推送到heroku时,我得到了这个消息:
rake aborted!
undefined method empty? for nil:NilClass
(in /tmp/build_3d16ad44-0015-4ecb-a7cf-a41959f03f82/app/assets/stylesheets/application.css.scss)
在追踪它时,我意识到这是因为
rake aborted!
You have already activated rake 10.0.3, but your Gemfile requires rake 0.9.2.2. Using bundle exec may solve this.
这可能是一个非常愚蠢的问题,但我不确定我应该如何使用bundle exec为heroku执行此操作?请帮忙。感谢。
答案 0 :(得分:2)
如果其他人遇到类似的问题。问题是heroku正在使用ruby 2.0及其所有新应用程序,所以为了做到这一点,你必须在gemfile上放置你使用的任何ruby版本然后通过键入git reset --soft HEAD~
然后git reset HEAD public/assets
重置git进入你的命令行。如果您在公共/资产中有未跟踪的文件,请rm -r public/assets
。然后保存更改并推送到新站点。
因此,如果您的应用使用旧版本的ruby而不是2.0,则必须进行类似更改,直到错误(链轮?)修复为止。
答案 1 :(得分:0)
在终端的项目目录中:
gem list rake
您将看到多个版本。如果是,则通过命令删除您不需要的版本(例如,在您的情况下为10.0.3):
gem uninstall rake
它将询问您从列表中选择的特定版本,选择一个并按Enter键。
或者,您也可以更新为特定的佣金版
bundle update rake -v '0.9.2.2'