nop*_*ole 5 gem ruby-on-rails bundler gemspecs ruby-on-rails-3
我正在使用一个宝石,vendor/gems/some-api-0.1.0
从另一个项目复制,并添加到Gemfile
:
gem 'some-api', :path => '~/development/myproj/vendor/gems/some-api-0.1.0'
Run Code Online (Sandbox Code Playgroud)
但如果我执行以下操作,它将失败并显示以下消息:
$ bundle install
Fetching source index for http://rubygems.org/
Could not find gem 'some-api (>= 0)' in source at ~/development/myproj/vendor/gems/some-api-0.1.0.
Source does not contain any versions of 'some-api (>= 0)'
Run Code Online (Sandbox Code Playgroud)
在网上搜索似乎建议需要gemspec?所以我需要在.gemspec
哪里写一些,是真的吗?有人可以说明在这种情况下如何做到这一点?
S.Y*_*han 25
stackoverflow上有许多其他类似的帖子,但万一有人偶然发现这篇文章:
出于某种原因,当您尝试从本地源使用gem时,您需要准确指定您正在使用的gem版本,例如
gem 'some-api', '0.2.0', :path => '~/development/myproj/vendor/gems/some-api-0.1.0'
Run Code Online (Sandbox Code Playgroud)
仅仅声称 :path 中有一个 gem 并不意味着那里实际上有一个 gem。Gem 具有 gemspec 文件,描述 gem 的名称、属于该 gem 的文件以及各种其他信息。
如果some-api-0.1.0
应该包含在 :path 目录中命名的文件some-api.gemspec
,并且它应该包含有关 gem 的信息,捆绑器可以使用该信息来要求 :path 之外的 gem。
归档时间: |
|
查看次数: |
6122 次 |
最近记录: |