如果您查看facebookbusiness gem,将会发现当前的最新版本是0.4.0.1
无论如何运行gem install 'facebookbusiness'
都会:
成功安装facebookbusiness-0.3.3.4
已安装1个宝石
尝试使用gem 'facebookbusiness', '~> 0.4.0.1'
在gem文件中指定版本,结果为Could not find gem 'facebookbusiness (~> 0.4.0.1)' in any of the gem sources listed in your Gemfile.
当我输入gem env
时,我得到:
RubyGems Environment:
- RUBYGEMS VERSION: 3.0.4
- RUBY VERSION: 2.5.1 (2018-03-29 patchlevel 57) [x86_64-darwin17]
- INSTALLATION DIRECTORY: /Users/me/.rvm/gems/ruby-2.5.1@rails
- USER INSTALLATION DIRECTORY: /Users/me/.gem/ruby/2.5.0
- RUBY EXECUTABLE: /Users/me/.rvm/rubies/ruby-2.5.1/bin/ruby
- GIT EXECUTABLE: /usr/bin/git
- EXECUTABLE DIRECTORY: /Users/me/.rvm/gems/ruby-2.5.1@rails/bin
- SPEC CACHE DIRECTORY: /Users/me/.gem/specs
- SYSTEM CONFIGURATION DIRECTORY: /Users/me/.rvm/rubies/ruby-2.5.1/etc
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-darwin-17
- GEM PATHS:
- /Users/me/.rvm/gems/ruby-2.5.1@rails
- /Users/me/.rvm/rubies/ruby-2.5.1/lib/ruby/gems/2.5.0
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- "gem" => "--no-document"
- REMOTE SOURCES:
- https://rubygems.org/
- SHELL PATH:
- /usr/local/bin
- /usr/local/sbin
- ~/bin
- /Users/me/.npm-packages/bin
- /Users/me/.rvm/gems/ruby-2.5.1@rails/bin
- /Users/me/.rvm/gems/ruby-2.5.1@global/bin
- /Users/me/.rvm/rubies/ruby-2.5.1/bin
- /Users/me/.rvm/bin
- /usr/local/bin
- /usr/bin
- /bin
- /usr/sbin
- /sbin
- /usr/local/go/bin
- /opt/X11/bin
- /usr/local/bin
有什么想法吗?
答案 0 :(得分:3)
gem install
从rubygems.org中获取已发布的宝石。仅仅因为开发人员已将新版本的git推入其git存储库,并不意味着他们也已将gem的新版本发布到rubygems。
在这种情况下,这正是发生的情况。在rubygems上可以找到最新发布的版本:https://rubygems.org/gems/facebookbusiness/
可能是因为他们的git存储库中的版本不稳定,或者由于其他原因(如文档尚未准备好或者它所依赖的API尚未公开)而尚未准备好发布可用,或者在发布之前正在接受安全审查,或者您可以想到的任何其他原因。如果您仍然想使用它,那么在您的Gemfile中使用它非常简单:
gem 'facebookbusiness', git: 'git@github.com:facebook/facebook-ruby-business-sdk'
然后运行bundle install
,直接从GitHub提取宝石。
答案 1 :(得分:1)
http://
和git://
的网址不安全。中间人攻击者可能会在您检出代码时篡改该代码,并可能向您提供恶意代码,而不是您打算检出的代码。由于:github
快捷方式在Bundler git://
版本中使用1.x
URL,因此我们建议使用HTTPS
URL或将:github
快捷方式替换为您自己的{{1} } git源。
在Gemfile中添加gem的好方法
HTTPS
在Gemfile中添加gem的好方法
gem 'facebookbusiness', git: 'git@github.com:facebook/facebook-ruby-business-sdk'
通过分支在Gemfile中添加gem的更好方式
gem 'facebookbusiness', github: 'facebook/facebook-ruby-business-sdk'
或
gem 'facebookbusiness', github: 'facebook/facebook-ruby-business-sdk', branch: 'branch_name'
或
gem 'facebookbusiness', github: 'facebook/facebook-ruby-business-sdk', ref: 'ref_number'
出于安全考虑并防止将来发生故障,请不要使用gem 'facebookbusiness', github: 'facebook/facebook-ruby-business-sdk', tag: 'tag_number'
分支代码。
我希望对您有帮助。