我正在构建一个使用rails-assets-growl
gem的gem。这个宝石可以使用不同的来源添加到我的Gemfile
,而不是'https://rubygems.org'
,如下所示:
source 'https://rails-assets.org' do
gem 'rails-assets-growl'
end
这在开发模式下工作正常。但是,当我在rubygems.org
中发布我的gem时,不会将gem包含为依赖。
我认为,这是因为我需要在gemspec而不是Gemfile中指定
https://rails-assets.org
源。但是,我不确定。
所以,问题是:
如何在gemspec文件中指定gem的来源?
答案 0 :(得分:2)
为了发布gem并列出依赖项,您需要使用gem specification,这与Gemfile不同
为了将rails-assets-growl列为依赖项,您需要将其添加到gem specification。这里的问题是你不能将带有外部位置的gem添加到rubygems中,因此你需要首先将rails-assets-growl发布到rubygems中。
如果这对你不起作用,你仍然可以创建你的宝石,添加一个捆绑文件,你将添加rails-assets-growl,然后你将添加gemspec,如:
source 'https://rubygems.org'
gemspec
source 'https://rails-assets.org' do
gem 'rails-assets-growl'
end
在最后一种情况下,gem不会被列为依赖项,但它将在gemfile上供其他人使用