2012-04-14 25 views
9

Estoy intentando que Octopress (http://octopress.org/) funcione, pero tengo algunos problemas. Estoy usando POW (http://pow.cx/) y parece que no carga la versión de Ruby correcta para mí (usando RVM).Pow, RVM y ZSH no funcionan juntos

Siempre utiliza la versión de ruby ​​predeterminada de RVM y no la especificada en .rvmrc. Mi versión predeterminada de Ruby en RVM es: ruby-1.9.3-p125.

En mi archivo .rvmrc tengo esto: rvm use 1.9.2 me sale este error en el navegador cuando visite mi sitio:

LoadError: cannot load such file -- bundler/setup 
~/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
~/.rvm/rubies/ruby-1.9.3-p125/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require' 
~/Sites/Lejnus/lejnus/config.ru:1:in `block in <main>' 
~/Library/Application Support/Pow/Versions/0.3.2/node_modules/nack/lib/nack/builder.rb:4:in `instance_eval' 
~/Library/Application Support/Pow/Versions/0.3.2/node_modules/nack/lib/nack/builder.rb:4:in `initialize' 
~/Sites/Lejnus/lejnus/config.ru:1:in `new' 
~/Sites/Lejnus/lejnus/config.ru:1:in `<main>' 
~/Library/Application  Support/Pow/Versions/0.3.2/node_modules/nack/lib/nack/server.rb:50:in `eval' 
~/Library/Application Support/Pow/Versions/0.3.2/node_modules/nack/lib/nack/server.rb:50:in `load_config' 
~/Library/Application Support/Pow/Versions/0.3.2/node_modules/nack/lib/nack/server.rb:43:in `initialize' 
~/Library/Application Support/Pow/Versions/0.3.2/node_modules/nack/lib/nack/server.rb:13:in `new' 
~/Library/Application Support/Pow/Versions/0.3.2/node_modules/nack/lib/nack/server.rb:13:in `run' 
~/Library/Application Support/Pow/Versions/0.3.2/node_modules/nack/bin/nack_worker:4:in `<main>' 

¿Por qué se usa 1.9.3-p125 cuando se especifica en 1.9.2 mi archivo .rvmrc? Si configuro 1.9.2 como predeterminado, funciona por supuesto ...

¿No se supone que debe hacer esta magia para mí y usar las versiones de ruby ​​correctas?

+0

rbenv es mucho más claro y simple que rvm. Todas mis danzas alrededor del fuego con rvm no tuvieron éxito, pero por otro lado, simplemente funciona. – frp

+0

Comprueba si tienes los mismos problemas con bash en lugar de zsh. – frp

+0

Lo intenté en bash, no hay diferencia. – Linus

Respuesta

15

Ok, parece que POW se está alejando de RVM.

I necesarios para ejecutar esta en mi raíz proyectos para que funcione: rvm env . -- --env > .powenv

+1

Acabo de intentar ejecutar este comando, pero me sale un error con --env 'argumento (s) de línea de comando no reconocido: '. --env '(ver:' uso de rvm ') '. ¿Es normal? –

+0

@YannickSchall He usado este comando semanalmente hasta que actualicé RVM la semana pasada y comencé a ver este mensaje. Creo que de alguna manera se eliminó el soporte para esta opción, pero no puedo encontrar ninguna documentación al respecto. – jakeonrails

+0

he ordenado el problema agregando un .powrc en la raíz del proyecto con el siguiente código 'if [-f" $ rvm_path/scripts/rvm "] && [-f" .rvmrc "]; luego fuente "$ rvm_path/scripts/rvm" fuente ".rvmrc" fi' –

1

Esto es lo que resuelve el problema para mí:

rvm env -- `rvm current` > .powenv

También puede crear un gancho RVM (as commented here) para cambiar el .powenv automáticamente cuando se cambia el env ruby ​​actual:

no se olvide de hacerlo ejecutable:

chmod +x ~/.rvm/hooks/after_use_update_powrc

+0

Hola Pavel, ¿hay alguna diferencia entre 'rvm env - \' rvm current \ '' y solo 'rvm env'? Simplemente hacer 'rvm env> .powenv' funciona bien para mí. –

+0

No lo he intentado. Esto es lo que leí en algún lado y lo publiqué porque está confirmado que funciona. Pero puede probar fácilmente y ver si hay una diferencia en el resultado de ambos comandos. –

+0

No hubo diferencia para mí, pero tal vez haya una diferencia en ciertas circunstancias. –

2

He ordenado el problema mediante la adición de un .powrc en la raíz del proyecto con el siguiente código

if [ -f "$rvm_path/scripts/rvm" ] && [ -f ".rvmrc" ]; then 
    source "$rvm_path/scripts/rvm" 
    source ".rvmrc" 
fi 

[Editado para agregar: Esto se recomienda en el Pow documentation]

Cuestiones relacionadas