我一直在尝试完成this tutorial,但遇到了foreman start
行的问题。我正在使用Windows 7,64位机器,我正在尝试在Heroku Toolbelt提供的git bash终端中执行此操作。
当我输入foreman start
时,我收到了:
sh.exe": /c/Program Files (x86)/Heroku/ruby-1.9.2/bin/foreman: "c:/Program: bad
interpreter: No such file or directory
所以我尝试在git bash中输入cmd,方法是键入cmd
,然后使用foreman start
(类似于a comment on one of the answers to this question建议)。这就是产生的结果:
Bad file descriptor
c:/Program Files (x86)/Heroku/ruby-1.9.2/lib/ruby/gems/1.9.1/gems/foreman-0.62.0
/lib/foreman/engine.rb:377:in `read_nonblock'
c:/Program Files (x86)/Heroku/ruby-1.9.2/lib/ruby/gems/1.9.1/gems/foreman-0.62.0
/lib/foreman/engine.rb:377:in `block (2 levels) in watch_for_output'
c:/Program Files (x86)/Heroku/ruby-1.9.2/lib/ruby/gems/1.9.1/gems/foreman-0.62.0
/lib/foreman/engine.rb:373:in `loop'
c:/Program Files (x86)/Heroku/ruby-1.9.2/lib/ruby/gems/1.9.1/gems/foreman-0.62.0
/lib/foreman/engine.rb:373:in `block in watch_for_output'
21:06:08 web.1 | exited with code 1
21:06:08 system | sending SIGKILL to all processes
我不知道第二组错误试图告诉我什么,因为它似乎声称engine.rb正在运行的文件位置甚至不存在于我的计算机上。
我已经查看了类似问题的其他答案,但是我没有收到类似的错误,所以不相信我的问题的解决方案目前存在。
答案 0 :(得分:70)
我有这个问题。我通过卸载工头宝石0.62版并安装0.61来修复它。
gem uninstall foreman
gem install foreman -v 0.61
答案 1 :(得分:11)
是的,heroku-toolbelt-installer目前无法正常工作(2013年8月30日)。 对于Windows,以下步骤对我有用:
答案 2 :(得分:6)
卸载heroku工具带并将其重新安装到一个没有空格的路径中,例如C:\heorku\
会有所帮助。除此之外,heroku windows安装程序目前可怕地被破坏,这对我们来说并不是一个值得骄傲的地方。要解决foreman的问题,您可以使用export VAR=VALUE
将环境变量设置为自己,然后使用您在proc文件中放置的命令运行应用程序。
将来会有所改善。
答案 3 :(得分:0)
要添加的一件事是,如果您将Heroku安装到包含空格的目录中,那么当您尝试执行gem install foreman -v 0.61
时(在Windows上)也会导致错误。
一旦我将Heroku重新安装到C:\ Heroku而不是C:\ Program Files \ Heroku,那么我就可以使用上面的Eric Speelman解决方案来完成这项工作。