2015-08-02 7 views
12

Ähnlich wie problem with rack 1.3.2. You have already activated rack 1.3.2, but your Gemfile requires rack 1.2.3 - Ich habe You have already activated rack 1.6.0, but your Gemfile requires rack 1.6.4 beim Versuch, Rails (4.2) in der Produktion mit Puma und Nginx zu laufen.Sie haben bereits Rack 1.6.0 aktiviert, aber Ihr Gemfile benötigt Rack 1.6.4

bundle update rake noch rm Gemfile.lock && bundle install scheinen zu helfen, ist die einzige Lösung, die ich bisher manuell ist rack (1.6.4) zu rack (1.6.0) in Gemfile.lock ändern.

+2

dies zu Ihrem Fall ähnlich ist. http://stackoverflow.com/questions/9241912/how-to-force-rack-to-work-round-the-usual-you-hat-ready-activated-rack. Sie müssen Rack-Version 1.6.0 wie folgt entfernen: 'Gem Uninstall Rack -v 1.6.0' – Athar

+0

Haben Sie versucht binstub? Überprüfen Sie die Antwort unter – Anatoly

+2

Das tat tatsächlich den Trick @Athartyvm! –

Antwort

1

Führen Sie es so: bundle exec rails s. Dies verwendet Einstellungen von Ihrem Gemfile.lock

+0

Danke, aber sieh Athars Kommentar oben. –

+1

Egal, wie sorgfältig Sie Edelsteine ​​installieren oder deinstallieren, Sie erhalten mehrere Versionen. Running it ist Bundle Exec ist der richtige Weg, um es zu tun und entfernt Version Zweideutigkeit von Ihrer Bereitstellung – Zepplock

+0

@Zepplock rechts, "binstubs" ist eine Möglichkeit zu vermeiden, * bundle exec * die ganze Zeit voraus – Anatoly

2

Ein erfahrener Rails-Entwickler highly recommends mit Binstubs.

bundle install --binstubs 

und führen Sie es über relative Pfad: Habe es von installiert

./bin/rails server 

oder was ist am meisten empfohlene Update-Pfad und vergessen Sie bundler Fragen:

export PATH="./bin:$PATH" 
rails server 
+0

Nein, das ist in Produktion mit Puma. Athars Kommentar oben korrigierte es jedoch. Vielen Dank! –

+1

Es wird wieder passieren, wenn nicht richtig behoben – Anatoly