等同于" npm install"对于宝石

时间:2015-07-22 02:50:56

标签: ruby gem dependency-management

我(重新)开始学习Ruby并且正在编写一个应用程序(不出所料)需要安装几个gem。我需要将此应用程序提供给其他人来运行,并且我担心他们不会拥有所需的宝石。来自node.js,有了它的package.json和" npm install",让我想知道如何确保其他人安装依赖项。我可以包含一个shell脚本来安装所有内容,但是有更好的,更Ruby的方式来管理宝石吗?

3 个答案:

答案 0 :(得分:2)

Ruby项目中依赖管理的优秀工具是Bundler。它允许Ruby项目指定应用程序按预期运行所需的确切gem和版本。

您可以在目录的根目录中指定Gemfile中的依赖项,如下所示:

source 'https://rubygems.org'
gem 'nokogiri'
gem 'rack', '~>1.1'
gem 'rspec', :require => 'spec'

如果最终用户的系统上有可用的捆绑包,他们可以在您的应用中运行bundle install并安装所有必需的宝石。

希望这有帮助!

答案 1 :(得分:2)

Bundler是我通常使用的。它具有与npm相匹配的功能。例如,如果我在Gemfile内部有依赖,那么捆绑包会自动处理它们并为你创建Gemfile.lock 。看看here.

答案 2 :(得分:0)

相当于npm的Ruby是一个名为RubyGems的项目,相当于npm install gem installDependencies列在Gemspec中,通常会自动安装。