2013-03-08 2 views
5

In qualche modo, non posso eseguire vagrant o heroku in cygwin. Funziona bene quando sto usando le finestre di default cmd applicazione, ma in cygwin, ottengo questo errore per vagabonda:Impossibile eseguire heroku o vagabondo in cygwin, ma OK in cmd

C: /vagrant/vagrant/embedded/lib/ruby/site_ruby/1.9.1/ rubygems/dependency.rb: 247: in to_specs ': Impossibile trovare vagrant (> = 0) tra [] (Gem :: LoadError) da C: /vagrant/vagrant/embedded/lib/ruby/site_ruby/1.9.1/ rubygems/dependency.rb: 256: in_spec 'da C: /vagrant/vagrant/embedded/lib/ruby/site_ruby/1.9.1/rubygems.rb: 1231: in gemma' da C:/vagabondo/vagabondo/incorporato/gemme/bin/vagabondo: 22: in'

E per Heroku:

C: \ Programmi (x86) \ ruby-1.9.2 \ bin \ ruby.exe: Nessun file o directory -/cygdrive/c/Programmi (x86)/Heroku/bin/heroku (LoadError)

Cos'è questa cosa del rubino? Non ho idea di cosa dovrei fare - lo sviluppo in Windows è un vero dolore, qualcuno può fornire qualche idea su come potrei risolvere questo problema?

Apprezzare qualsiasi aiuto. Grazie!

+0

Installare anche il rubino su cygwin. – solusipse

risposta

5

Ho eseguito lo stesso problema utilizzando Rails e Heroku su Windows.

Sembra che sia the Toolbelt is not supported under Cygwin. Inoltre, i colori non vengono sempre visualizzati nel modo giusto (ad esempio, non sono riuscito a visualizzare i colori dei log di heroku, anche dopo aver usato ansicon -i).

Inoltre, ho preso in considerazione l'utilizzo del prompt CMD aumentato con GOW ma ciò significa che è necessario aggiungere ".bat" a ogni comando ei colori rappresentano ancora un problema.

Ho finito per utilizzare la shell Git Bash inclusa con il pacchetto RailsInstaller. Riconosce tutti i percorsi ai file rilevanti, ha tutti i comandi della shell necessari e ogni colore sembra essere reso correttamente (ad esempio registri di rotaie, test di cetriolo e rspec, registri di heroku, ecc.).

4

Probabilmente hai risolto il problema molto tempo fa, ma volevo solo aggiungere i passaggi che ho seguito perché avevo lo stesso problema su Windows con Cygwin.

In primo luogo sempre provare a fare un aggiornamento della vostra installazione Cygwin soprattutto quando si vede un errore simile a quello che hai postato (ho avuto lo stesso errore):

/ruby: No such file or directoryin/heroku: line 4: /cygdrive/d/Development/Heroku/ruby-1.9.2/bin 

Così ho aggiornato Cygwin e feci sicuro di selezionare tutti i pacchetti/interpreti ruby ​​necessari ecc., ma questo non risolve il problema perché continuavo a ricevere lo stesso messaggio di errore.

Poi ho seguito la procedura descritta in Running the Heroku Command-Line Client Under Cygwin:

(1) Scaricare rubygem 1.9.3 da http://rubyforge.org/frs/download.php/76072/rubygems-1.8.24.zip

(2) Quindi eseguire il seguente -

$ unzip rubygems-1.8.24.zip 
$ cd rubygems-1.8.24/rubygems-1.8.24 
$ ruby setup.rb install 
$ gem update --system 
$ gem install heroku 

(3) Aprire una nuova finestra di shell e verificare la versione -

$ heroku version 
heroku-gem/2.28.10 (i386-cygwin) ruby/1.8.7 

Questo risolto il mio problema e non posso ora esegui i comandi di heroku dalla shell Cygwin su Windows.

+0

Heroku Toolbelt aveva già installato rubygem, quindi ho solo bisogno di: $ aggiornamento gemma --system e $ gem install Heroku lavorato. – eddyparkinson

1

Per me @ la risposta di Azkuma mi ha solo fatto metà strada. Quello che ha funzionato per me:

1) Scaricare ed estrarre rubygem zip: https://rubygems.org/pages/download

2) Impostare gli alias a gemma e Heroku

alias gem='C:/ruby/bin/gem' 
alias heroku='"C:/Program Files (x86)/Heroku/bin/heroku.bat"' 

3) installare come sopra

ruby setup.rb install 
gem update --system 
gem install heroku 

4) accedi a heroku

heroku login 
0

Ho trovato semplicemente l'impostazione di un alias ha funzionato per me.

alias heroku=c:/Program\\\ Files\\\ \\\(x86\\\)/Heroku/bin/heroku.bat 

allora posso solo usare il comando heroku direttamente con Cygwin.

L'unica cosa che ho un problema con è heroku login (e per estensione, git push heroku master) per cui mi viene richiesto di utilizzare cmd.exe. Per quella parte, ho appena aperto la finestra di Git Bash all'interno della relativa cartella, accesso e spingo da lì.