2015-08-02 16 views
12

Podobny do problem with rack 1.3.2. You have already activated rack 1.3.2, but your Gemfile requires rack 1.2.3 - Doświadczam You have already activated rack 1.6.0, but your Gemfile requires rack 1.6.4 podczas próby uruchomienia Rails (4.2) w produkcji z Puma i Nginx.Już aktywowałeś rack 1.6.0, ale twój Gemfile wymaga szafy 1.6.4

bundle update rake ani rm Gemfile.lock && bundle install wydają się pomóc, jedynym rozwiązaniem mam tak daleko jest ręcznie zmieniając rack (1.6.4) do rack (1.6.0) w Gemfile.lock.

+2

ta jest podobna do sprawy. http://stackoverflow.com/questions/9241912/how-to-force-rack-to-work-around-the-usual-you-have-already-activated-rack. musisz usunąć rack w wersji 1.6.0, taki jak ten 'gem uninstall rack -v 1.6.0' – Athar

+0

Czy próbowałeś binstub? Sprawdź odpowiedź poniżej: – Anatoly

+2

To rzeczywiście dopadło @Athar - tyvm! –

Odpowiedz

1

Uruchom to tak: bundle exec rails s. To będzie używać ustawień z twojego Gemfile.lock

+0

Dzięki, ale zobacz komentarz Athara powyżej. –

+1

Bez względu na to, jak starannie instalujesz lub odinstalowujesz klejnoty, otrzymasz wiele wersji. Uruchamianie go to pakiet exec jest właściwym sposobem, aby to zrobić i usuwa niejednoznaczność wersji z twojego wdrożenia – Zepplock

+0

@Zepplock right, "binstubs" to sposób na uniknięcie * pakietu exec * cały czas * – Anatoly

2

Jeden doświadczony programista Railsowy highly recommends używający binstubs. On zainstalowany przez:

bundle install --binstubs 

i uruchomić go za pomocą ścieżki względnej:

./bin/rails server 

lub co jest najbardziej zalecana aktualizacja ścieżka i zapomnieć o problemach Bundler:

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

Nie, to jest w produkcji przy użyciu Puma. Komentarz Athara powyżej naprawił to. Dzięki! –

+1

To się powtórzy, jeśli nie zostanie naprawione poprawnie – Anatoly

Powiązane problemy