2012-04-24 9 views
32

Mam aplikację szyny, która działa dobrze z rails s, ale kiedy próbuję ją załadować za pomocą pow I'm getting this error :pow mówi: Bundler :: GemNotFound: Nie można znaleźć rake-0.9.2.2 w żadnym ze źródeł

Bundler::GemNotFound: Could not find rake-0.9.2.2 in any of the sources 
~/.rvm/gems/ruby-1.9.2-p290/gems/bundler-1.0.22/lib/bundler/spec_set.rb:88:in `block in materialize' 
~/.rvm/gems/ruby-1.9.2-p290/gems/bundler-1.0.22/lib/bundler/spec_set.rb:82:in `map!' 
~/.rvm/gems/ruby-1.9.2-p290/gems/bundler-1.0.22/lib/bundler/spec_set.rb:82:in `materialize' 
.... 

Weird rzeczą jest, plik .rvmrc w tej aplikacji określa 1.9.3-p125:

which rake 
.../.rvm/gems/ruby-1.9.3-p125/bin/rake 

i oto co widzę, gdy biegnę bundle install:

Using rake (0.9.2.2) 

FWIW, pow działa dobrze z innym projektem bez szyn za pomocą 1.9.2 i innym gemsetem.

Dzięki!

Odpowiedz

79

Chyba aktualizowane RVM i napotkasz ten znany problem: https://github.com/37signals/pow/issues/271

najprostszym rozwiązaniem jest uruchomienie go w projekcie reż:

rvm env . > .powenv 

czyli

cd /project/path # with .rvmrc 
rvm env > .powenv 
+0

Mam "Nierozpoznany argument (y) wiersza poleceń:". "(patrz:" użycie rvm ")" kiedy uruchomiłem to polecenie: – Zeiga

+0

jakiej wersji RVM używasz? zaktualizuj ją i powinna działać poprawnie. – mpapis

+0

rvm 1.9.2, "Masz już najnowszą wersję!" kiedy Zrobiłem "rvm get latest", dziękuję – Zeiga

6

wpadłem w tym wydaniu, gdy zmieniłem plik z .rvmrc na .ruby-wersja i .ruby-gemset.

Zmień plik .powrc być:

 
if [ -f "$rvm_path/scripts/rvm" ] && [ -f ".ruby-version" ] && [ -f ".ruby-gemset" ]; then 
    source "$rvm_path/scripts/rvm" 
    rvm use `cat .ruby-version`@`cat .ruby-gemset` 
fi 
3

Używam tego .powrc który ładnie obejmuje wszystkie bazy (! Dzięki nbibler)

Zrobione stąd https://gist.github.com/nbibler/5307941
if [ -f "$rvm_path/scripts/rvm" ]; then 
    source "$rvm_path/scripts/rvm" 

    if [ -f ".rvmrc" ]; then 
    source ".rvmrc" 
    fi 

    if [ -f ".ruby-version" ]; then 
    rvm use `cat .ruby-version` 
    fi 

    if [ -f ".ruby-gemset" ]; then 
    rvm gemset use --create `cat .ruby-gemset` 
    fi 
fi