我下载了最新的Windows工具带;但是,当我尝试从DOS启动任何heroku命令时,我得到:
c:/ Program Files / Heroku / lib / heroku / updater.rb:126:in fork': fork() function is unimplemented on this machine (NotImplementedError)
from c:/Program Files/Heroku/lib/heroku/updater.rb:126:in
background_update!'
来自c:/ Program Files / Heroku / lib / heroku / updater.rb:111:inject_libpath'
from c:/Program Files/Heroku/bin/heroku:19:in
'
我的目的是部署Play!在heroku上的应用程序。我使用的是Windows XP SP3。有人因为我头痛而启发我。
答案 0 :(得分:4)
我遇到了同样的问题。我的解决方案是将对fork
的调用注释掉。
导航到您的Heroku安装目录,并在子目录updater.rb
中找到文件lib\heroku
。
注释掉第126行(应为pid = fork do
),143(end
)和144(Process.detach.pid
)。
这应该可以解决问题。
答案 1 :(得分:1)
在您的主目录(即C:/Users/xxx/.heroku/autoupdate.last
)中创建一个名为“autoupdate.last”的文件。
请参阅updater.rb:
File.join(Heroku::Helpers.home_directory, ".heroku", "autoupdate.last")
答案 2 :(得分:1)
我在Windows 7上有一个有这个问题的同事。他不小心安装了红宝石1.8.7。当您使用当前版本的Heroku Toolbelt(本文中为2.32.9)使用ruby 1.8.7时,似乎会发生此错误。 Heroku Toolbelt似乎更喜欢Ruby 1.9.x.您可以运行 gem install heroku ,但错误消失了,但是您将收到有关不推荐使用heroku gem的警告,这意味着它可能会丢失当前功能。如果可以的话,更新到ruby 1.9.x.虽然在某些情况下有效,但在我看来,编辑ruby文件应该是最后的手段。
答案 3 :(得分:0)
我不确定这些固定问题中的哪一个,但其中一个或两个都做了: 1.取消选择"隐藏"用户/ [用户] / Heroku的&#34。夹。 2.取消选择"阅读"仅适用于文件夹。