ruby - 如何在 Ruby 应用程序中卡住 gem?

标签 ruby rubygems freeze

我需要卡住两个 gem,并使我的项目从其项目文件夹引用这些 gem。

我知道在 Rails 中执行此操作的方法有很多,但是如何在 Ruby 中手动执行此操作?

我正在使用jeweler基于我之前的问题“Starting a Ruby project: github + build tool”的建议。

最佳答案

您可以独立于 ruby​​gems 基础设施使用它们,方法是首先将每个 gem 解压到供应商/gems(或项目中的任何路径)中:

cd yourapp
mkdir -p vendor/gems
cd vendor/gems
gem unpack gem1
gem unpack gem2
[etc.]

...然后将所有卡住的 gems 的 lib 目录添加到您的加载路径中:

$:.unshift(*Dir[File.dirname(__FILE__) + "/vendor/gems/**/lib"])

关于ruby - 如何在 Ruby 应用程序中卡住 gem?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3393690/

相关文章:

mysql - 使用 ruby​​ 2.0.0 在 Windows 中安装 mysql ruby​​ gem 失败

java - Commons Net FTPClient 与 Mule 无限期挂起

ruby - 暂停 "until"循环并等待按键继续 (Ruby)

ruby-on-rails - Public_activity gem 参数 Rails 3

Ruby/Gem/Bundler 缓存我的本地 gem 文件

c++ - Qt程序每次都死机

node.js - 如何防止 while 循环卡住 node.js?

ruby - 未设置的 Sinatra 和 session 变量

ruby - 为什么 "extend"不向类添加常量,而 "include"却添加常量?

ruby - RVM 在 arch linux 上安装 ruby​​ 错误