我可以在子目录/子模块中引用gemfile吗?

时间:2016-10-31 19:09:50

标签: ruby gemfile

我有两个git模块A和B. B是A的子模块(因此是子目录)。我在B中有一些我需要从A调用的ruby脚本。模块A本身没有任何Ruby代码(所以不需要Gemfile)。我在B中有一个Gemfile,它列出了B中脚本的依赖关系。但是要从A调用这些脚本,我必须将Gemfile移动到A:

cd A
mv B/Gemfile .
bundle update
bundle install
bundle exec ruby B/someScript.rb

有没有办法可以在B中调用脚本而无需先将Gemfile移动到A?

1 个答案:

答案 0 :(得分:1)

只需将终端移动到子文件夹 - B(子模块)并运行脚本。无论如何A没有任何ruby代码,所以在运行脚本时将终端移动到B子文件夹很好。这将很容易管理子模块。

cd A/B
bundle update
bundle install
bundle exec ruby someScript.rb

如果你真的希望它在A中,那么按照下面的Gemfile

  

的Gemfile

# Gemfile inside project A
source 'http://rubygems.org/'

eval_gemfile File.join(File.dirname(__FILE__), "B/Gemfile")