6.Ruby Gemfile依赖关系文件详解

1.Global Source

#全局配置获取依赖包的源,源必须是一个有效的RubyGems存储库。
source "https://rubygems.org"    

2.Ruby

您的应用程序所需的Ruby版本,版本号必须填写。

ruby "3.1.2"

3.Gems

如果声明了gems,名称必须填写,否则不要声明。

# 任意版本
gem "nokogiri"

# 严格匹配       
gem "rails", "5.0.0"

# >=4.1.1 <4.2.0
gem "RedCloth", ">= 4.1.0", "< 4.2.0"

该说明符~>具有特殊含义,大于等于本身版本号,小于最右边的数字的前一位加1。

# >=2.0.3 <2.1
gem "thin", "~> 2.0.3"

# >=2.1 <3.0
gem "thin", "~> 2.1"

# >=0.0 <1.0
gem "thin", "~> 0"

# 与2.2.beta.12匹配
gem "thin", "~> 2.2.beta"

4.Groups

每个gem可以被指定为一个或多个组中的成员。任何未指定组成员资格的gem都被放置在default默认组中。

# These gems are in the :default group
gem 'nokogiri'
gem 'sinatra'

gem 'wirble', group: :development

gem 'cucumber', group: [:cucumber, :test]

group :test do
  gem 'faker'
  gem 'rspec'
end

group :test, :development do
  gem 'capybara'
  gem 'rspec-rails'
end

5.Source

你可以使用’:source‘选项为gem选择一个备选的RubyGems存储库。

gem "some_internal_gem", source: "https://gems.example.com"

这将强制从此源加载gem,并忽略在文件顶层声明的全局源。如果此源中不存在该gem,则不会安装它。

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/ruby/rubyenv/1827.html

(0)
上一篇 2023年1月5日 23:40
下一篇 2023年1月6日 23:32

相关推荐

发表回复

登录后才能评论