【问题标题】:Given a ruby script how to figure out what it depends on?给定一个 ruby​​ 脚本如何弄清楚它依赖于什么?
【发布时间】:2010-11-24 08:43:44
【问题描述】:

我想将一个 ruby​​ 脚本分发给我的许多朋友,因为它很有用。但是我怎么知道他们还需要安装什么?我的意思是在脚本的顶部,有这样的:

require 'rubygems'      #
require 'activerecord'  #TODO: figure out what packages this depends on
require 'activesupport' #
require 'duration'      #

这让我对他们需要安装什么有了一些了解,但上次我在朋友的计算机 (Linux) 上尝试过,上面的每个结果都需要移动包。例如,activesupport 需要一个数据库,如果这个脚本是 sqlite3,所以我必须安装 sqlite3 和一堆 lib,甚至可能是 dev 包。

是否有任何工具或方法可以收集所有依赖项的列表,以便我可以将它们包含在安装说明中?或者更好的是,有没有办法将它们打包成一个简单的安装程序?

【问题讨论】:

    标签: ruby linux rubygems distribution software-distribution


    【解决方案1】:

    将其作为宝石分发。 gem 可以让你添加依赖,如果一个依赖有依赖,rubygems 系统会为你安装。

    【讨论】:

    • 但这也会安装必要的非 gem 包,如 sqlite3 吗?
    【解决方案2】:

    如果您需要 activerecord,则需要安装某种 activerecord 适配器驱动程序或与 db 对应的 gem,例如pg、mysql、sqlite-ruby 以及连接到所述数据库的连接设置。

    每当您使用当前的 ruby​​gems 安装 gems 时,它们都会安装依赖项,只是 activerecord 有点……“有趣”?

    【讨论】:

      猜你喜欢
      • 2012-07-24
      • 1970-01-01
      • 2014-02-24
      • 2017-02-12
      • 1970-01-01
      • 1970-01-01
      • 2015-06-08
      • 2015-06-01
      • 1970-01-01
      相关资源
      最近更新 更多