web-dev-qa-db-ja.com

Pythonを使用してHerokuチュートリアルでフォアマンを開始できません

私は このチュートリアル を完了しようとしましたが、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と入力し、次にforeman startと同様に)を使用してこの質問への回答の1つにコメントを入力してみました 推奨)。これが生み出したものです:

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が実行されていると主張しているように思われるファイルの場所がコンピューターに存在しないため、2番目のエラーが何を伝えようとしているのかわかりません。

同様の問題に対する他の回答を確認しましたが、同様のエラーを受け取っていません。そのため、現在、私の問題の解決策は存在しません。

41
user1167662

私はこの問題を抱えていました。 Foreman Gemのバージョン0.62をアンインストールし、0.61をインストールすることで修正しました。

gem uninstall foreman
gem install foreman -v 0.61
70
Eric Speelman

はい、heroku-toolbelt-installerは現在正しく機能していません(30-Aug-2013)。 Windowsでは、次の手順でうまくいきました。

  1. herokuをアンインストールする(Windowsの「プログラムのアンインストール」を使用)
  2. heroku https://toolbelt.heroku.com/windows をC:\ bin\herokuにインストールします。つまり、「スペースなし」
  3. インストールRuby http://rubyinstaller.org/downloads/ から
  4. cmdで「gem install foreman -v 0.61」を実行します。はい、「gem install foreman」はv0.63をインストールしましたが、「foreman start」では機能しません
  5. cmdの "foreman start"は、heroku hello-worldの例で機能します
11

Heroku toolbeltをアンインストールし、スペースが含まれていないパス(たとえば、C:\heorku\)に再インストールすると、少し役立ちます。それを除けば、heroku windowsインストーラーはひどく壊れています。フォアマンの問題を回避するには、export VAR=VALUEを使用して自分の環境変数を設定し、procfileに入力したコマンドを使用してアプリを実行します。

これは将来的に改善されるでしょう。

6
Eric Fode

追加することの1つは、スペースを含むディレクトリにHerokuをインストールすると、gem install foreman -v 0.61(Windowsの場合)を実行しようとしたときにエラーが発生することです。

HerokuをC:\ Program Files\HerokuではなくC:\ Herokuに再インストールすると、上記のEric Speelmanのソリューションを使用してこの作業を行うことができました。

0
cs_stackX