我目前正在开发一个独立的ruby应用程序以及作为其前端的Rails应用程序。我正在使用Bundler来管理Ruby应用程序的依赖关系,因此有两个gemfiles。
尝试通过系统调用rake任务从Rails前端执行Ruby应用程序时遇到问题。
当我从标准IRB调用rake任务时,它可以工作;但如果我尝试从Rails控制器或rails控制台调用该任务,则会出现依赖性问题。
作为一种解决方法,我可以将Rails应用程序中不存在的所有gem添加到Rails Gemfile中,但我想这种方法是错误的。
我认为这可能是Bundler范围的问题。我怎么能解决这个问题?
感谢。
答案 0 :(得分:2)
fork do
Dir.chdir("/your/project/dir")
ENV['BUNDLE_GEMFILE'] = File.expand_path('../Gemfile', __FILE__)
Bundler.setup
exec "rake -T"
end