Rails 3 bundler& rvm:捆绑的宝石不会出现在宝石列表中?

时间:2011-01-19 17:43:51

标签: ruby-on-rails bundler rvm

ubuntu 10.04黏糊糊的lynx或其他所谓的生产应用程序的操作系统。我也安装了rvm,然后在mac上,开发和生产红宝石和宝石是相同的。

现在,我习惯于在gem list看到所有捆绑的宝石......就像正常一样,但是当我在生产中gem list时,我没有看到任何捆绑的宝石。

这意味着我无法使用rails c或任何其他宝石。

我发现我可以做bundle exec rails c或其他东西并以这种方式使用控制台,但我更感兴趣的是为什么会发生这种情况,以及如何修复它以便宝石列表拥有所有宝石。感觉还不错。

思想?

1 个答案:

答案 0 :(得分:11)

在Mac上处于开发模式时,gems仍会安装在默认的gem路径中,而在生产模式下,它们会安装在特定于项目的文件夹中。尝试在每台机器上执行bundle show rails,你会明白我的意思。

当您运行gem list时,它会查找主gem文件夹,并且由于您的生产宝石位于项目特定的文件夹中,因此全局gem命令无法查找。因此,您需要执行bundle exec以在服务器上运行任何项目特定的gems命令。出于我的目的,我为be创建了bundle exec别名。此外,要列出项目的宝石,您可以bundle list

请参阅http://gembundler.com/v1.3/rationale.html#deploying-your-application了解此背后的理由。