0

システムコマンドを使用して、railsアプリからrubyプロセス(gemのバイナリ)を実行しています。

外観は次のとおりです。

system('someprocess')

ここで、someprocessはrubybashスクリプトです。someprocessはsomegemGemの一部です。

質問:なぜ次のようになるのですか?

somegemはバンドルの一部ではありません。それをGemfileに追加します。(Gem :: LoadError)

プロセスがRailsアプリの外部で実行されており、Gemについて知る必要がない場合。Railsアプリに関する限り、それは単なる外部プロセスですよね?

4

1 に答える 1

2

Bundlerにクリーンな環境を使用するように指示してみてください。

Bundler.with_clean_env do
  system 'someprocess'
end
于 2012-08-07T15:14:08.780 に答える