6

奇怪......但这就是我得到的:

$ gem list | grep rvm
>> rvm (1.11.3.3)
$ gem uninstall rvm
>> INFO:  gem "rvm" is not installed

这怎么可能?这个问题的根源可能源于我下载了最新的 RVM 并发现它不适用于最新版本的 POW。因此我不得不内爆 RVM 并重新安装旧版本。从那时起,当我做 a 时cap deploy,我得到了经典:

`<top (required)>': RVM - Capistrano integration was extracted to a separate gem, install: `gem install rvm-capistrano` and remove the `$LOAD_PATH.unshift` line, note also the 'set :rvm_type, :user' is now the default (instead of :system). (RuntimeError)

有任何想法吗?

4

8 回答 8

16

我最近遇到了同样的 rvm 错误:

“RVM - Capistrano 集成已提取到单独的 gem,安装:gem install rvm-capistrano并删除该$LOAD_PATH.unshift行,还要注意 'set :rvm_type, :user' 现在是默认设置(而不是 :system)。(RuntimeError)”

做错误建议的事情对我根本不起作用。

对我有用的是:rvm -v

当我这样做时,我看到我的 rvm 版本是rvm 1.13.0

使用“ rvm get”我做了“ rvm get 1.12.0”但仍然得到错误

然后我尝试了“ rvm get 1.11.0”,然后我的 rvm 又开始工作了。

我不是 100% 确定首先是什么导致了错误,但我认为这一切都是rvm get stable在我无法安装一些 gem 之后尝试升级 rvm 时开始的。我发现我无法再安装 gems 了,因为我已经将我的 xcode 更新到 4.3.2 并且显然 Apple 更改了他们的 c 编译器,这与 rvm 不兼容。

希望这可以帮助某人。

于 2012-04-27T01:35:34.673 回答
10

你在宝石中吗?如果是这样,那么该 gem 可能在解释器的未命名 gemset 或全局 gemset 中。如果是这样,请尝试

rvm use 1.9.3
gem uninstall rvm

或者

rvm use 1.9.3@global
gem uninstall rvm
于 2012-04-24T21:16:13.990 回答
5

我也遇到了这个错误。您遇到的错误是由于最近的capistrano更新。如果您添加rvm-capistrano到您的 gemfile 并$LOAD-PATH.unshift从您的 capistrano 部署文件中删除该行,它应该可以工作,至少它对我有用。

于 2012-04-24T21:13:43.170 回答
2

问题是 RVM 1.12 及更高版本不能很好地与 Capistrano 配合使用。因此,请卸载您的 RVM,然后获取 RVM 1.11 ( rvm get 1.11.0)。

于 2012-05-10T20:51:32.103 回答
2

RVM 的版本可能与 POW 不兼容。您可以删除 RVM,然后安装最新版本。

于 2013-08-08T02:24:25.117 回答
2

那是正确的。它在“全球”宝石集中。此 gemset 与“默认”gemset 和您实际创建的任何 gemset 都“混合”在一起。

因此,如果您安装了 Ruby 1.9.3,例如 (rvm install 1.9.3),它将被安装到该 ruby​​ 的“全局”中。您可以通过执行“gem list rvm -dl”来验证这一点,这将显示所请求 gem 的名称、版本、描述和磁盘上的位置。

∴ gem list rvm -dl

*** LOCAL GEMS ***

rvm (1.11.3.3)
    Authors: Wayne E. Seguin, Michal Papis
    Homepage: https://rvm.beginrescueend.com/
    Installed at: /home/me/.rvm/gems/ruby-1.9.3-p194@global

    RVM Ruby Gem Library
∴

我不知道您为什么要删除它,但是您会按照安倍所说的第二选择来做。

于 2012-04-25T05:41:23.517 回答
2

为了提供更多详细信息,RVM 与 POW 一起使用,这是已知问题:https ://github.com/37signals/pow/issues/271

最简单的解决方案(在项目目录中):

rvm env . > .powenv
于 2012-04-25T08:36:58.540 回答
-1

内森做对了:https ://stackoverflow.com/a/10306090/294449

您过去必须在 deploy.rb 中执行 unshift,但最新版本的 RVM 使该 hack 不再需要。只需将其删除并将 rvm-capistrano gem 添加到您的 Gemfile。它就像一个魅力。

于 2012-07-20T13:48:44.103 回答