安装Oh My ZSH后缺少Rails?

时间:2012-02-16 23:11:59

标签: ruby-on-rails zsh

我最近改变了我的终端使用Oh My ZSH但是出于某种原因,当我尝试运行rails命令时,我收到以下错误:

/Users/david/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/rubygems/dependency.rb:247:in `to_specs': Could not find rails (>= 0) amongst [bigdecimal-1.1.0, io-console-0.3, json-1.5.4, minitest-2.5.1, rake-0.9.2.2, rdoc-3.9.4] (Gem::LoadError)
    from /Users/david/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/rubygems/dependency.rb:256:in `to_spec'
    from /Users/david/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/1.9.1/rubygems.rb:1210:in `gem'
    from /Users/david/.rvm/gems/ruby-1.9.3-p0@railstest/bin/rails:18:in `<main>'

有人能帮我这个吗?

5 个答案:

答案 0 :(得分:13)

我有完全相同的问题,结果是我没有将〜/ .bashrc中的必要行移动到〜/ .zshrc。把它放在最后并重新打开终端解决了问题:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"

答案 1 :(得分:7)

对于使用rbenv的人,你应该将你的rbenv初始化移动到〜/ .zshenv,如http://coderwall.com/p/0o64yq?i=1&p=1&q=author%3Awilhelmbot

答案 2 :(得分:5)

提到第一步就是添加

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"

如果在添加此行代码后仍然无效,请检查导出路径。

检查.zshrc中的PATH(导出PATH)并删除其中对.rvm的所有引用。你应该最终得到这样的出口              PATH =在/ usr / local / bin目录:在/ usr / local / sbin中:在/ usr / bin中:/ bin中:/ usr / sbin目录:/ sbin目录:在/ usr / local / bin目录:在/ usr / X11 / bin中:在/ usr / texbin

安装oh-my-zsh时,它会查看你当前的PATH并用它填充.zshrc,这也会拉动.rvm环境。而且你不会想要它,因为rvm应该处理它。

答案 3 :(得分:0)

1)尝试以下命令:

  • rbenv which rails

  • rbenv哪个宝石

  • gem env

2)如果输出中的环境问题不明确,则:

  • 看看你是否有这个文件:

$HOME/.rvm/scripts/rvm

  • 尝试“来源”
问:出于好奇,什么是“ZSH”,为什么你决定尝试呢?

问:我认为它与“bash”兼容,对吗?

答案 4 :(得分:0)

对于 rbenv 用户

当您安装omz(哦,我的zsh!)时,omz会做两件事

  1. 它将.zshrc的内容复制到.zshrc.pre-oh-my-zsh
  2. 制作新的.zshrc

要解决“当前未安装滑轨”的问题,您可以将.zshrc.pre-oh-my-zsh的内容复制到新的.zshrc中。

cd ~
cat .zshrc.pre-oh-my-zsh >> .zshrc

重启后,终端对我有用。