Rbenv和两个版本的Heroku客户端

And*_*rew 3 ruby gem zsh heroku rbenv

我有一个相当讨厌的问题,我似乎无法深究.我刚从rvm切换到rbenv,现在我遇到了Heroku客户端的问题.

基本上,有一个旧版本的Heroku生活在系统的某个地方,而rbenv并不知道它,但它覆盖了我安装的任何较新版本的heroku客户端.这是一个问题,因为我需要新版本的heroku cli来运行雪松命令......

以下是来自我的shell的示例:

~  » gem uninstall heroku
INFO:  gem "heroku" is not installed
~  » which heroku
heroku: aliased to nocorrect heroku
~  » rbenv which heroku
rbenv: heroku: command not found
~  » gem install heroku  
Fetching: heroku-2.17.0.gem (100%)
Successfully installed heroku-2.17.0
1 gem installed
~  » which heroku
heroku: aliased to nocorrect heroku
~  » heroku version
heroku-gem/1.12.1
~  » rbenv which heroku
/Users/Andrew/.rbenv/versions/1.9.2-p290/bin/heroku
~  » gem list heroku

*** LOCAL GEMS ***

heroku (2.17.0)
~  » heroku version
heroku-gem/1.12.1
~  » 
Run Code Online (Sandbox Code Playgroud)

我不知道Heroku的旧版本在哪里,如何摆脱它,或者(最重要的是)为什么它在我的系统中挥之不去并且重写rbenv特定的新宝石.

有什么建议?

And*_*rew 9

好吧,我花了一段时间,但我能够追踪到这一点.事实证明我很久以前就已经使用过heroku gem(在我使用RVM之前),而RVM一直在隐藏旧的宝石,而RBENV却没有.我发现这个使用:

sudo find / -type d -name "*heroku*"
Run Code Online (Sandbox Code Playgroud)

这表明我有一些古老的宝石生活在系统ruby文件夹中:

Library/Ruby/Gems/1.8/...
Run Code Online (Sandbox Code Playgroud)

我清理了下面的所有子文件夹,这解决了我的问题.