Wie kann man das "Ihre Ruby-version 1.9.3, aber Ihre Gemfile angegeben 2.0.0"
Erstellte ich ein Ruby-Projekt, aber beim laufen bundle update
und bundle install
gibt es einen Fehler:
Your Ruby version is 1.9.3, but your Gemfile specified 2.0.0
Ein Bild von ihm ist: http://i.imgur.com/dZMhI11.png?1
Mein gemfile ist:
ruby '2.0.0'
#ruby-gemset=railstutorial_rails_4_0
gem 'rails', '4.0.0'
group :development do
gem 'sqlite3', '1.3.8'
end
gem 'sass-rails', '4.0.0'
gem 'uglifier', '2.1.1'
gem 'coffee-rails', '4.0.0'
gem 'jquery-rails', '3.0.4'
gem 'turbolinks', '1.1.1'
gem 'jbuilder', '1.0.2'
group :doc do
gem 'sdoc', '0.3.20', require: false
end
Bitte verwenden Sie keine Bilder oder offsite-Aufbewahrung für wesentliche Teile Ihrer Frage. Links verrotten und brechen. An diesem Punkt wird die Frage keinen Sinn machen, zu zukünftigen Menschen auf der Suche für ähnliche Lösungen. Stattdessen kopieren und fügen Sie den hervorstechenden Teile des Fehlers und Ihre gemfile in der Frage text.
InformationsquelleAutor theone1one | 2013-10-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie
ruby -v
wirst du sehen, dass Sie installiert haben, Ruby 1.9.3, aber die erste Zeile in der Gemfile gibt, die Sie verwenden möchten Ruby-2.0.0.Sollten Sie die Installation von Ruby 2.0.0 oder ändern Sie die erste Zeile in der Gemfile festlegen Ruby 1.9.3.
Stichprobe von Gemfile:
Ich benutze rvm, und
ruby -v
zeigt meine ruby-version ist 2.2.0, aber die Fehlermeldung sagt, dass die ruby-version 2.0.0Antwort unten befestigt dieses problem für mich
$ gem install bundler
InformationsquelleAutor Jeremy Green
Habe ich bemerkt, dass dies passiert, wenn ich versucht habe zu
bundle install
mit einem frischen RVM gemset noch nicht enthalten bundler (als es fiel zurück auf das system bundler installieren, auf das referenziert die system-ruby).Läuft
gem install bundler
fest für mich.ruby -v
gab die richtige version, und das Bündel war nicht zu erkennen ist.Bei mir hat es geklappt, als ich versucht habe
gem install rake
denken Sie daran "rbenv rehash" nach "gem install bundler"
Sie meinen Tag gerettet. Danke.
Wohl auf der Hand, aber nur um hinzuzufügen, dass Sie brauchen, um wirklich zu laufen
bundle
nach der Installation der bundler gem. (Sonst kann der Fehler immer noch auftreten, aufgrund von vorher erstellten Binärdateien, die könnte täuschen die Menschen zu denken, es hat nicht funktioniert.)InformationsquelleAutor mistertim
Keines dieser arbeitete für mich, aber ich fand es schließlich heraus:
Hatte ich eine Rails 4 Projekt verwendet so genannte Feder zu halten, eine Rails-Umgebung, die im hintergrund laufen, für die Geschwindigkeit.
Ich begonnen hatte, den Frühling mit Ruby 2.1.1, aber dann habe ich ein Upgrade auf 2.1.2 (im Gemfile und .ruby-version). Meine Theorie ist, dass der Frühling hielt am laufen auf 2.1.1 und so diesen Fehler verursacht hat.
Danke! Dies war mein Problem auch, denke ich.
yup, Frühling Dummheit war mein Problem so gut
Ich habe es gemeldet, by the way: github.com/rails/spring/issues/314
Danke, danke
InformationsquelleAutor Henrik N
Heroku Toolbelt verursachen, wenn Sie mit der
heroku
Befehl, oder genauer gesagt, mitbundle exec heroku
, die Sie nie tun sollten. Wenn Sie Ihr problem lösen durch entfernenbundle exec
vor Ihremheroku
ruft, dann versuchen Sie, die erste. Wenn nicht, dann Folgen Sie, was ist unten vorgeschlagen.Update Februar 25, 2017:
Heroku Toolbelt wurden umbenannt zu Heroku CLI. Sehen Sie diese links, um aktualisiert zu installieren/deinstallieren-Anleitung:
https://devcenter.heroku.com/articles/heroku-cli
https://github.com/heroku/cli
Original-Beitrag bereitgestellt unbearbeitete unten (für legacy-Anweisungen):
Wenn Sie installiert haben die Heroku toolbelt von der offiziellen Website:
Oben
/usr/bin/heroku
es wohl so etwas wie sagt#!/usr/local/heroku/ruby/bin/ruby
Versuchen
/usr/local/heroku/ruby/bin/ruby -v
und sehen, ob es Ausgänge ruby 1.9.3.https://github.com/heroku/toolbelt/issues/53
Beachten Sie die 1.9.3 angegeben am Ende.
--- Do NICHT verwenden Sie diese Seite, und seine verpackt installer, zum installieren des Heroku CLI auf OSX:
https://toolbelt.heroku.com/
Weil die technischen details dort aufgelistet sind wichtig:
Dies ist nachteilig, weil die RVM wird, dann tun Sie dies:
Es ist, dass reizt die 1.9.3 version, auch wenn ich angegeben habe eine andere Ruby-version mit RVM.
Deinstallieren Sie das Heroku toolbelt
Gibt es keine offiziellen uninstaller für OSX schreiben +1 hier wenn Sie denken, es sollte eins sein: https://github.com/heroku/toolbelt/issues/8
Deinstallieren, manuell (verschieben in den Papierkorb, ein backup zu halten, falls etwas ausfällt):
Installieren des Heroku toolbelt mit homebrew statt
Weil es links die aktuellen RVM-version auf die Heroku-toolbelt richtig. Ausführung:
brew install heroku-toolbelt
Heroku toolbelt installiert wird, die nur in diesem Ort:
/usr/local/Cellar/heroku-toolbelt/3.21.4
(Man könnte Sie auch entfernen Sie es einfach mit
brew uninstall heroku-toolbelt
wenn man wollte.)Testen der Installation:
Bemerken es jetzt, sagt 2.0.0 am Ende der Letzte Befehl gibt. Sie führen Sie nun die Heroku-client mit dem, was
rvm current
ruby-version, die Sie angegeben haben in der RVM.danke, diese Feste für mich!
thx @Magne, Sie meinen Tag gerettet
Das ist fantastisch, ich hatte genau dieses problem. Ein Kommentar - Ihre Fragen link funktioniert nicht mehr.
Danke @mattnedrich, ich aktualisiert die post mit neuen links an der Spitze, um den neuen Speicherort auf github: github.com/heroku/cli
InformationsquelleAutor Magne
Wenn Sie
rvm list
und es zeigt eine 2.0-version von Ruby als Ihre aktuelle version und Sie sind immer noch diese Fehlermeldung bekommen, ist die Eingabervm use (ruby version)
behoben dieses Problem für mich.InformationsquelleAutor dysruption
"Ich hatte das gleiche problem mit rbenv, installiert über die brauen.
Konnte ich nicht herausfinden, habe versucht, alle der oben genannten, landete ich Wechsel zu rvm, die es gelöst."
In Reaktion auf diese post, stellen Sie sicher, dass Sie ausführen
rbenv rehash
nach der Installation eines ruby-version. Das schien für mich arbeiten, wenn ich lief in das gleiche problem.rbenv rehash
gelöst habe das problem auch bei mir.Woah, ich hätte nicht erwartet, scrollen Sie so weit zu bekommen, die Antwort, die ich suchte 🙂 ich wollte nicht zu bewegen, um rvm.
InformationsquelleAutor Daniel Kang
Wenn Sie eine Ruby version manager wie RVM oder rbenv, dann schaffen, in die top-level-Verzeichnis des Projektes eine Datei namens
.ruby-version
mit der version Rahmengeometrie in Ihrem Gemfile, z.B.:Scheinbar ist die cross-
{rbenv,rvm}
Weg von spec ' Ing der version jetzt.InformationsquelleAutor Clay Bridges
ruby-Schalter entfernt wurde, von ubuntu 14.04 und bis. Ich lasse diese Antwort für die Nachwelt, aber Sie müssen wahrscheinlich eine andere Lösung. Check out"Ruby 2.0 ohne ruby-Schalter?".
Wenn Sie Sie installiert haben, eine neue version von Ruby, aber sind noch immer Irrtümer über die Gemfile mismatch, müssen Sie wahrscheinlich verwenden
ruby-switch
um die neue Ruby version als Standard:Schön.
sudo apt-get install ruby-switch
fehlt.InformationsquelleAutor Chris Hanson
In meinem Fall habe ich
rvm get head
zum aktualisieren der RVM-version und es funktionierte.InformationsquelleAutor PallavSharma
Fand ich, dass Neuinstallation RVM hat den trick, wenn dieser Fehler aufgetreten ist, wie jeder andere Vorschlag hat nicht funktioniert.
InformationsquelleAutor Shaun McDonald
Ich hatte dieses Problem nach dem Upgrade von Ruby-Versionen via rbenv. Ich habe versucht, die
spring stop
Befehl, jemand oben erwähnt.Wenn ich lief, bekam ich noch eine Nachricht, die darauf hindeutet, dass ich
gem pristine --all
Also lief ich, die Befehl, und dann ging alles wieder normal.
InformationsquelleAutor asgeo1
Ich hatte das gleiche problem mit rbenv, installiert via Homebrew.
Konnte ich nicht herausfinden, habe versucht, alle der oben genannten, so landete ich Wechsel zu RVM, die es gelöst.
InformationsquelleAutor FreePender
Entdeckte ich mein Rechen-oder Schienen-Skript unter dem bin-Verzeichnis wurde mit einer anderen version von ruby. Ich verglich zwei rake-Skripts aus zwei Servern (Produktion und Entwicklung) und es zeigte mir, Sie waren mit unterschiedlichen ruby-Versionen. So musste ich entsprechend aktualisieren.
InformationsquelleAutor David Okwii
Stieß auf diesen Fehler bei der Verwendung der Fluggast gem. Da ich installierte dieses Schmuckstück mit sudo-Zugriff, dauerte es eine Standard-version von ruby auf seine eigenen. Ich glaube, der Grund könnte sein, dass ruby installiert wurde, ohne sudo-Zugriff auf mein system und Beifahrer nicht wissen, die aktuelle version von ruby verwendet werden.
Jedoch, die Installation der Edelstein und seine apache-Modul ohne sudo-Zugriff behoben das problem.
InformationsquelleAutor Rishinder
Vorschlag für jeden auf der Suche nach diesem Problem und keine der typischen Lösungen beheben dieses Problem für Sie, überprüfen Sie, um zu sehen, wenn Sie mehr als eine ruby version manager. Es gibt mehrere version-Manager, und einige software oder install-Skripte verwenden unterschiedliche. Ich kenne
rbenv
,rvm
,asdf
, und mindestens eine andere, die ich erinnere mich nicht den Namen. Ich hatteasdf
installiert, indem Sie ein anderes Werkzeug, ohne es zu merken passiert und es verursacht die angegebene version mismatch.Zu prüfen, ob diese ausführen
which ruby
und achten Sie genau auf den Pfad. Wenn es nicht die aktuelle version manager, Sie erwarten, Sie leiden unter diesem Problem. Einfachste Lösung ist die Verwendung von die, die Sie wollen, und loszuwerden des anderen. Wenn aus irgendeinem Grund Sie brauchen, um zu halten, werden Sie wahrscheinlich benötigen, ändern Sie die Reihenfolge der Pfade in der shell .rc-Datei.InformationsquelleAutor agbodike
Ich Teile diese Leckerbissen in einem moment der großen Erleichterung, dass endlich ein problem gelöst wurde, verfolgt mich seit Monaten.
Ich versuchte buchstäblich jede Lösung zu diesem problem, das ich im Netz finden konnte und am Ende des Tages es stellt sich heraus, mein problem verursacht wurde, da hatte ich versehentlich installiert eine Rails-app in Benutzer/MeinName, und es war zu Lesen, dass Gemfile.
Also, bevor Sie gehen, versuchen Sie die verschiedenen anderen Lösungen, die hier angeboten werden, möchten Sie vielleicht, um eine zweite zu bestätigen, dass Sie nicht etwas ähnliches gemacht.
InformationsquelleAutor Alex Colket
Ich bin mit den Windows dev-Umgebung.
Habe ich nur noch
C:\Ruby22-x64\bin
in meiner path-variable vorheroku\bin
Eintrag.InformationsquelleAutor mdwpilot
Ich hatte genau dieses Problem - nur ein paar Sekunden, nachdem ich Mac OSX Terminal bestätigen, dass Ruby 2.0.0 wurde erfolgreich installiert.
Mac OSX Schiffe mit einer out-of-date-version von Ruby schon installiert und als Standard festgelegt Ruby. Um das Problem zu beheben, installieren Sie "JewelryBox", eine charmante und schöne app, die gibt Ihnen ein GUI zum anzeigen und verwalten von mehreren Rubinen (hilfreich, wenn Sie mehrere dev-Umgebungen auf einem Mac). Sie können es verwenden, um die Auswahl aufzuheben, Mac OSX Standard-Ruby und wählen Sie Ihre neu installierte Ruby.
InformationsquelleAutor Deborah