Ruby on rails 包含gem项目的子模块如何从周围的gem项目获得所需的资源?
这正成为一个相当大的挫折。我在GitHub上有两个Ruby项目存储库。我将它们称为项目A和项目B。我在项目B中设置了一系列Ruby脚本,并在项目A中创建了该项目的子模块。当我试图在一个简单的Ruby类或项目A中的某个项目中从项目B中获取资源时,我被抛出错误,说它需要在其GEM文件中声明的项目B的资源。我在本地projectb目录中运行Ruby on rails 包含gem项目的子模块如何从周围的gem项目获得所需的资源?,ruby-on-rails,ruby,git,gem,require,Ruby On Rails,Ruby,Git,Gem,Require,这正成为一个相当大的挫折。我在GitHub上有两个Ruby项目存储库。我将它们称为项目A和项目B。我在项目B中设置了一系列Ruby脚本,并在项目A中创建了该项目的子模块。当我试图在一个简单的Ruby类或项目A中的某个项目中从项目B中获取资源时,我被抛出错误,说它需要在其GEM文件中声明的项目B的资源。我在本地projectb目录中运行bundle——路径vendor/bundle,将其更改回projecta,然后运行我的服务器以接收相同的错误。在项目A中需要Gemfile依赖项的情况下,需要项目
bundle——路径vendor/bundle
,将其更改回projecta,然后运行我的服务器以接收相同的错误。在项目A中需要Gemfile依赖项的情况下,需要项目B的资源的方式是什么?听起来像是安装了项目B中的Gem,但在项目A中无法访问。项目B的Gem安装到的路径是否在项目A的加载路径中?假设我使用bundle--path两个项目上的供应商/捆绑包
。项目A的资源位于路径vendor/bundle上,子模块项目B在子模块的路径上有自己的vendor/bundle。您是如何用加载路径来表示的?很抱歉混淆了——当ruby通过require或load加载其他文件时,它会在ruby加载路径中查找它试图加载的文件。如果找不到正在查找的文件,它将抛出一个错误。听起来您可能需要将项目B的捆绑路径添加到第一个项目加载路径。这个链接提供了我所说内容的另一个描述: