Ruby on Rails 什么是宝石?

示例

gem相当于编程语言ruby的插件或扩展。

确切地说,即使是导轨也不过是一颗宝石。许多宝石是在轨道或其他宝石(它们取决于所述宝石)上构建的或独立的。

在您的Rails项目中

宝石文件

对于Rails项目,您有一个名为的文件Gemfile。在这里,您可以添加要包含在项目中并在项目中使用的gem。添加完成后,您需要使用安装宝石bundler(请参阅捆绑器部分)。

Gemfile.lock

完成此操作后,您Gemfile.lock将使用新添加的gem及其依赖项进行更新。该文件锁定您使用过的宝石,因此它们使用该文件中声明的特定版本。

GEM
remote: https://rubygems.org/
specs:
devise (4.0.3)
bcrypt (~> 3.0)
orm_adapter (~> 0.1)
railties (>= 4.1.0, < 5.1)
responders
warden (~> 1.2.3)

这个例子是针对宝石的devise。在Gemfile.lock版本4.0.3中声明了版本,以告诉您在其他计算机或生产服务器上安装项目时要使用哪个指定版本。

发展历程

一个人,一个小组或整个社区都可以工作并维护一颗宝石。完成的工作通常在某些issues问题已修复或features添加后才发布。

通常,发行版遵循语义版本2.0.0原则。