0

我有两台服务器正在运行(几乎)相同的安装。两台服务器都是虚拟机,并且 server_b 是作为 server_a 的副本创建的(这就是我知道它们是相同安装的方式)。Server_a 已使用“rvm get HEAD”进行了更新。

服务器_a:

  • rvm 版本 1.15.4
  • ruby-1.8.7-p334
  • .rvmrc 文件指定 ruby​​-1.8.7@my_gemset(未指定补丁级别)
  • 导轨 3.0.5

服务器_b:

  • rvm v 1.2.8
  • ruby-1.8.7-p334
  • .rvmrc 文件指定 ruby​​-1.8.7@my_gemset(未指定补丁级别)
  • 导轨 3.0.5

当我部署到 server_a 时,RVM 抱怨未安装 ruby​​-1.8.7-p370,但部署到 server_b 不会产生此错误。我不确定它为什么要寻找 1.8.7 的最新补丁级别——我已经检查了每台服务器上的 RVM 配置,并比较了它们。('rvm info' 的输出导致两台服务器的信息相同,除了 RVM 版本)。

我得出的结论是它可能与 RVM 的版本有关?我错过了什么明显的东西吗?任何建议将不胜感激。

4

2 回答 2

4

你应该更新而不是降级,你真正的问题是你指定没有补丁级别的 ruby​​ 版本,在这种情况下,RVM 将采用最新的已知补丁级别,所以rvm use 1.8.7你不需要告诉它rvm use 1.8.7-p334

至于降级问题你可以指定 version rvm get 1.2.8,请记住这个版本大约有 2 年的历史了,从那时起很多东西都在 rvm 中修复了,你不会得到对旧版本的任何支持。

于 2012-08-19T00:06:51.527 回答
1

是的,有可能。你能行的。以前我使用的是 rvm 版本 1.29.0 我尝试使用此代码将 rvm 与 1.28.0 版本一起使用 代码是:rvm get 1.28.0

于 2017-04-20T05:20:31.027 回答