Docs header transparent bg

在开发 gem 时使用 Bundler

如果您从头开始创建 gem,可以使用 bundler 内置的 gem 骨架为您创建一个基础 gem 以供编辑。

$ bundle gem my_gem

这将创建一个名为 my_gem 的新目录,其中包含您的新 gem 骨架。如果您已经有一个 gem,您可以创建一个 Gemfile 并使用 Bundler 来管理您的开发依赖项。以下是一个示例。

source "https://rubygems.org.cn"
gemspec
gem "rspec", "~> 3.9"
gem "rubocop", "0.79.0"

在此 Gemfile 中,gemspec 方法导入在 my_gem.gemspec 文件中使用 add_runtime_dependency 列出的 gem,并且还安装 rspec 和 rubocop 来测试和开发 gem。bundle install 将安装 gemspec 和 Gemfile 中的所有依赖项,但 rspec 和 rubocop 不会被 gem install mygembundle add mygem 包含。gemspec 中的运行时依赖项被视为在您的 Gemfile 中列出,并且开发依赖项默认添加到组 :development。您可以使用 :development_group 选项更改该组。

gemspec :development_group => :dev

此外,您可以使用 :path 指向特定的 gemspec。如果您的 gemspec 位于 /gemspec/path 中,请使用

gemspec :path => '/gemspec/path'

如果您在同一个目录中有多个 gemspec,请指定您要引用的 gemspec 使用 :name

gemspec :name => 'my_awesome_gem'

这将使用 my_awesome_gem.gemspec 就这样!在开发您的 gem 时使用 bundler,否则,正常使用 gemspec!

$ gem build my_gem.gemspec
在 GitHub 上编辑此文档,如果您发现错误或遗漏内容。