2013-03-14 17 views
41

Ho tentato di completare this tutorial, ma ho incontrato un problema con la riga foreman start. Sto usando una macchina Windows 7 a 64 bit e sto provando a farlo nel terminale git bash fornito da Heroku Toolbelt.Impossibile avviare il caporeparto in Heroku Tutorial utilizzando Python

Quando entro foreman start ricevo:

sh.exe": /c/Program Files (x86)/Heroku/ruby-1.9.2/bin/foreman: "c:/Program: bad 
interpreter: No such file or directory 

Così provato entrare cmd in git bash digitando cmd e quindi utilizzando foreman start (simile a a comment on one of the answers to this question suggerisce). Questo è ciò che ha prodotto:

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 

non ho idea di quello che la seconda serie di errori sta cercando di dirmi, dal momento che la posizione del file che sembra affermare engine.rb è in esecuzione da non esiste nemmeno sul mio computer .

Ho esaminato altre risposte a problemi simili, tuttavia non ricevo errori simili e quindi non credo che esista attualmente una soluzione al mio problema.

risposta

70

Ho avuto questo problema. L'ho risolto disinstallando la versione 0.62 del foreman gem e installando 0.61.

gem uninstall foreman 
gem install foreman -v 0.61 
+1

grazie! lavorato! – user1167662

+0

tuttavia, vorresti sapere come posso effettivamente visualizzare la pagina ora? Ho provato ad andare a 0.0.0.0 e 0.0.0.0:5000 nel mio browser Chrome, e ho ricevuto un errore 108. Ho provato 'curl 0.0.0.0' e' curl 0.0.0.0: 5000' in un terminale separato git bash, e quelli che mi hanno dato "arricciatura: (7) non potevano connettersi all'host". qualche idea? – user1167662

+0

ok, sono riuscito a visitarlo dopo aver distribuito su heroku, ma mi sto ancora chiedendo come posso visualizzarlo quando collaudo con il caposquadra? – user1167662

6

Disinstallare il set di strumenti heroku e reinstallarlo in un percorso che non contiene spazi, ad esempio C:\heorku\ aiuterà un po '. A parte questo, il programma di installazione di heroku windows è orribilmente rotto al momento, non esattamente un motivo di orgoglio per noi. Per risolvere il problema con Foreman puoi impostare le variabili di ambiente da te utilizzando export VAR=VALUE e quindi eseguire l'app utilizzando i comandi che hai inserito nel tuo procfile.

Questo sta per migliorare in futuro.

+1

Come dovrei disinstallarlo? Non riesco a trovare alcuna istruzione suggerita, ma quando ho provato a usare il pannello di controllo per "rimuovere il programma" (di "Herkou 2.35.0") ha detto che non poteva disinstallarlo e ha detto che potrebbe essere perché è stato già disinstallato? – user1167662

+2

Il suggerimento del percorso non è stato di aiuto con il problema "Descrittore file errato". –

11

Sì, heroku-toolbelt-installer non funziona correttamente al momento (30-Aug-2013). Per le finestre le seguenti operazioni hanno lavorato per me:

  1. disinstallazione Heroku (attraverso finestre 'programma di disinstallazione')
  2. installare Heroku https://toolbelt.heroku.com/windows in C: \ bin \ Heroku, cioe 'senza spazi'
  3. installare Ruby da http://rubyinstaller.org/downloads/
  4. in cmd eseguire "gem install foreman -v 0.61". Sì, "gem install caposquadra" v0.63 installato, che non funziona per "inizio capo"
  5. cmd "inizio capo" lavora per l'esempio Heroku ciao-mondo
+1

quale versione di Ruby dovrei usare? – swdev

0

Una cosa da aggiungere è che se installi Heroku in una directory con spazi, ciò causerà anche un errore quando provi a fare gem install foreman -v 0.61 (su Windows).

Una volta reinstallato Heroku in C: \ Heroku invece di C: \ Programmi \ Heroku, sono riuscito a realizzare questo lavoro utilizzando la soluzione di Eric Speelman sopra riportata.