3

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

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

这是我的外壳中发生的事情的示例:

~  » 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
~  » 

我不知道 Heroku 的旧版本在哪里,如何摆脱它,或者(最重要的是)为什么它会在我的系统中徘徊并覆盖特定于 rbenv 的较新 gem。

有什么建议么?

4

1 回答 1

9

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

sudo find / -type d -name "*heroku*"

这表明我在系统 ruby​​ 文件夹中有一些旧的宝石:

Library/Ruby/Gems/1.8/...

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

于 2011-12-22T16:51:55.670 回答