从Rails运行Ruby进程会抱怨Gemfile

时间:2012-08-07 08:44:31

标签: ruby ruby-on-rails-3

我正在使用系统命令从我的rails应用程序运行ruby进程(gem的二进制文件)。

以下是它的样子:

system('someprocess')

其中someprocess是ruby bash脚本。 someprocess是somegem Gem的一部分。

问题:为什么我会收到以下内容?

  

somegem不是捆绑包的一部分。将其添加到Gemfile。 (GEM :: LoadError)

当进程在我的Rails应用程序之外运行时,不需要知道Gem。就Rails应用程序而言,它只是一个外部过程,不是吗?

1 个答案:

答案 0 :(得分:2)

您可以尝试告诉Bundler使用干净的环境:

Bundler.with_clean_env do
  system 'someprocess'
end