我最近改变了我的终端使用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>'
有人能帮我这个吗?
答案 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
答案 4 :(得分:0)
对于 rbenv 用户
当您安装omz(哦,我的zsh!)时,omz会做两件事
要解决“当前未安装滑轨”的问题,您可以将.zshrc.pre-oh-my-zsh的内容复制到新的.zshrc中。
cd ~
cat .zshrc.pre-oh-my-zsh >> .zshrc
重启后,终端对我有用。