0

我有一个要与 Hive 流一起使用的 ruby​​ 脚本。此脚本需要使用外部 gem。因为我的数据节点上没有安装这个 gem,所以脚本不会运行。

我希望能够临时添加这个 gem 来运行这个工作。有没有办法将此 gem 包含到分布式缓存中?也许作为一个拉链?(例如添加文件 custom_gem.zip)

4

1 回答 1

0

我发现最好的方法是手动将 gem 的文件添加到分布式缓存中。

以下是使用浏览器 Ruby gem 的示例:

browser-master.zip我从 GitHub下载并解压缩。然后我将整个解压缩的文件夹添加到分布式缓存中:

ADD FILE /home/user/browser-master

在我在 Hive 中使用的 Ruby 脚本中,我必须告诉 Ruby 在哪里可以从 gem 中找到所需的文件:

$.push File.expand_path("../browser-master/lib", __FILE__)
require "browser"
于 2013-12-03T05:28:12.260 回答