9

我正在构建一个使用gem 的rails-assets-growlgem。Gemfile可以使用与以下不同的来源将此 gem 添加到我的中'https://rubygems.org'

source 'https://rails-assets.org' do
  gem 'rails-assets-growl'
end

这在开发模式下工作正常。但是,当我在咆哮中发布我的 gem 时,rubygems.orggem 不包含在依赖项中。

宝石依赖

我认为,这是因为我需要https://rails-assets.org在 gemspec 而不是 Gemfile 中指定源。但是,我不确定。

所以,问题是:

如何在 gemspec 文件中指定 gem 的来源?

4

1 回答 1

4

为了发布 gem 并列出依赖项,您需要使用gem 规范,这与Gemfile不同

为了将 rails-assets-growl 列为依赖项,您需要将其添加到您的gem 规范中。这里的问题是您无法将具有外部位置的 gem 添加到 ruby​​gems 中,因此您需要首先将 rails-assets-growl 发布到 ruby​​gems 中。

如果这对你不起作用,你仍然可以去创建你的 gem,添加一个 bundler 文件,你将在其中添加 rails-assets-growl,然后将 gemspec 添加到它,例如:

source 'https://rubygems.org'

gemspec

source 'https://rails-assets.org' do
  gem 'rails-assets-growl'
end

在最后一种情况下,gem 不会被列为依赖项,但它会在 gemfile 中供其他人使用

于 2016-07-18T20:29:12.747 回答