REE rake gems:安装不正常

时间:2011-04-26 21:09:29

标签: rake gem ruby-enterprise-edition

我在CentOS 5上安装了REE,用于执行非常特殊的任务(使用rails 2.3.10和ruby 1.8),我真的需要将它隔离

在这种情况下,我不会使用bundler或smth。

如果我通过

手动设置每个宝石,一切正常
/opt/ree/bin/gem install agem

但是当我跑步时

/opt/ree/bin/rake gems:install

准备好这个命令项目 - 所有(或大多数,我没有检查每个依赖项)宝石通过/ usr / bin / gem安装到公共gem路径中,我不需要其中任何一个

这是一个问题,我不想手动安装所有宝石。有没有人遇到过这个问题并且可能知道解决方案?

2 个答案:

答案 0 :(得分:1)

真正帮助我的解决方案是暂时将/usr/bin/gem替换为/opt/ree/bin/gem

的符号链接

使用此替换/opt/ree/bin/rake gems:intall按预期工作 - 所有必需的gem都安装到REE路径 - 将/usr/bin/gem返回到原始gem可执行文件,使系统再次稳定

这不是非常 clean 解决方案,但它可以正常工作,所以它可以像锤子一样在危急情况下使用。

答案 1 :(得分:0)

环境中某处有GEM_HOME变量,或者调用的运行时ruby不是ree。因此,我建议至少尝试三件事:

  • 从几乎为空的环境开始(例如运行env -i sh)并再次运行rake命令,看看这是否仍然在公共gem路径中安装gem。要小心,因为env -i是一个空的环境,你可能会看到来自rubygems的抱怨(因为没有设置HOME或没有其他设置)......
  • 检查shebang行(rake程序的第一行)是否真的表明你的REE二进制而不是别的
  • 最后,使用带有/opt/ree/bin/ruby /opt/ree/bin/rake gems:install
  • 的REE二进制文件运行rake

这可以告诉你出了什么问题。总而言之,我认为环境问题可能是这件事最可能的罪魁祸首