RVM和Rails 3 - rails命令触发错误:是目录

Yve*_*ven 5 ruby-on-rails rvm ruby-on-rails-3

我按照这个要点安装了Rails 3:http://gist.github.com/296055

但是当我在终端尝试"rails"时,我收到以下错误:

/Users/yves/.rvm/gems/ruby-1.9.2-head/gems/activerecord-3.0.0/lib/rails: Is a directory - /Users/yves/.rvm/gems/ruby-1.9.2-head/gems/activerecord-3.0.0/lib/rails (Errno::EISDIR)
    from /usr/bin/rails:19:in `load'
    from /usr/bin/rails:19
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

UPDATE

好的,我想出了什么.我可以直接转到正确的可执行文件来运行正确的rails:/Users/yves/.rvm/gems/ruby-1.9.2-head/gems/rails-3.0.0/bin/rails

显然我的"rails"命令仍然链接另一个版本,usr/local/bin中的版本

我怎么能改变这个?

mar*_*lly 4

看看我对另一个问题的回答:

(如果这对您有用,我们应该将其标记为重复问题。但我自己没有足够的积分来做到这一点)

--

旧版本的 rvm 有一个错误,可能会导致您的 ruby​​ 版本交叉连接,因为操作系统可以缓存 which命令的可执行路径(特别是如果您使用 zsh)。请参阅Yehuda Katz 就该主题发表的这篇长篇、详细且令人兴奋的文章。

今天早上我必须做的事情:

rvm update && rvm reload # update rvm
rvm gemset delete rails3 # delete old gemset
rvm install 1.9.2
rvm use 1.9.2
rvm gemset create rails3
rvm use 1.9.2@rails3
which ruby          # check to be sure the ruby interpretter is properly set to 1.9.2
hash -r             # if ruby interpretter is not pointing to 1.9.2
gem install rails
which rails         # check to be sure we are using rvm version of rails
Run Code Online (Sandbox Code Playgroud)