OSX上的Rails 4:总是不得不在新的终端窗口/新会话上重新安装rails

时间:2014-02-18 11:21:23

标签: ruby-on-rails rvm

事实证明这是一个非常奇怪的问题,我对此感到困惑。我知道有很多文档和SO q / a,但我仍然很困难。

我一直在使用本教程:

http://blog.nicoschuele.com/posts/install-rails-4-correctly-on-os-x-mountain-lion

实际上非常有帮助。

也许这是我的bashrc文件,但我真的不确定。

问题:

我开始了一个新的铁轨项目,一切都在游泳。我在当前终端会话中cmd + t打开一个新选项卡。做一个rails -v并且它给了我好的'sudo gem install rails`消息。

如果我完全关闭终端并重新打开,也会发生同样的事情。 ruby -v似乎从未出现过问题:红宝石总是存在,而rvm似乎不是问题。

这是我通过bashrc

访问的vi ~/.bashrc文件
  1 export PATH=$HOME/local/bin:$PATH
  2 export ANDROID_HOME=/usr/local/opt/android-sdk
  3 export ANDROID_SDK=/usr/local/Cellar/android-sdk/22.3
  4 
  5 PATH=$PATH:$HOME/.rvm/src/rvm/bin # Add RVM to PATH for scripting
  6 
  7 
  8 PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting
  9 [[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
 10 
 11 ### Added by the Heroku Toolbelt
 12 export PATH="/usr/local/heroku/bin:$PATH"

我的bash_profile如下:

  1 if [ -f ~/.bashrc ];
  2 then
  3     source ~/.bashrc
  4 fi
  5 
  6 source ~/.profile
  7 
  8 [[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"     # Load RVM into a shell session *as a function*  

如果有人能提供一些关于我为什么需要继续安装rails的见解,我将非常感激。

1 个答案:

答案 0 :(得分:1)

看来如果你把以下一行

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"     # Load RVM into a shell session *as a function*  

进入bash_profile您可能会遇到问题。

我最终从bash_profile移除了上述内容并将其放在bashrc的底部。

是的,我不得不为手头的应用程序再次安装rails(不使用sudo,只需gem install rails --no-ri --no-rdoc),但这似乎已经解决了手头的情况:

我可以关闭终端,cd回到rails app目录,执行rails -v并返回rails 4.0.2

我可以在当前终端会话中打开新标签,在rails项目目录中执行rails -v并返回rails 4.0.2