我试图通过首先删除rvm,从使用rvm管理OSX上的Ruby gem到rbenv。 rbenv似乎永远不会接管,which ruby
或which rails
总是返回系统版本。
感到沮丧和睡眠不足,我决定删除/ usr / bin / rails以查看是否会强制系统使用rbenv中指定的版本,而它没有,现在根本找不到rails。
Emmaline:rvm Turnsole$ which ruby
/usr/bin/ruby
Emmaline:rvm Turnsole$ which rails
Emmaline:rvm Turnsole$ ruby -v
ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0]
Emmaline:rvm Turnsole$ rails -v
-bash: rails: command not found
Emmaline:rvm Turnsole$
我意识到我所做的是愚蠢的,但现在即使gem install rails
成功完成,/ usr / bin / rails也没有。
此外,在重新安装rvm之后,我尝试运行位于我本地gems目录中的rails脚本(或者从/ usr / bin对它进行符号链接)然后会发生这种情况:
Emmaline:~ Turnsole$ ~/.gem/ruby/1.8/bin/rails
env: ruby_noexec_wrapper: No such file or directory
我该怎么办?
答案 0 :(得分:1)
我仍然不完全确定一切都出了什么问题,但似乎rvm安装了bundler,因为ruby_noexec_wrapper(属于bundler)被插入到各种各样的东西中,因此当它消失时搞砸了。
最终解决方案是卸载bundler,然后是railties(从我的本地目录中删除了rails),然后使用sudo重新安装rails。
无论如何,现在我有/ usr / bin / rails回来了。我想了解为什么/如何将ruby_noexec_wrapper脚本成为我所有宝石的一部分,但这是谷歌可能会提供的另一个问题。