如果我有Gemfile这些内容:
gem 'my-plugin'
my-plugin需要哪些文件Bundle.require?
如果我有Gemfile这些内容:
gem 'my-plugin'
my-plugin需要哪些文件Bundle.require?
Bundler.require每个 Gem 只做一个需求声明。Gem 是否需要来自顶级文件的附加文件。
它根据标准命名约定确定每个 Gem 需要哪个文件:
rspec-rails您需要使用require 'rspec/rails')。所以,在这种情况下,它会require 'my/plugin',这可能不是你想要的。按照惯例,您的 Gem 应该使用下划线命名,并且在其目录my_plugin中应该有一个顶级文件,该文件需要您的 Gem 中的其他文件。libmy_plugin.rb
如果您无法更改 Gem 的名称,您可以使用如下代码覆盖默认的 require 语句:
gem 'my-plugin', :require => 'my_plugin'
如果您需要 Gem 中的多个文件,最好向您的应用程序添加明确的 require 语句,而不是依赖Bundler.require.