【问题标题】:Ruby: How to include/install .bundle?Ruby:如何包含/安装 .bundle?
【发布时间】:2011-05-12 21:49:19
【问题描述】:

我是 Ruby 的新手。我有一个 .bundle 文件。我把它放在源文件夹中并做了

require('my.bundle')

但是当我调用包中的方法时,找不到定义。我是否必须安装它们或以其他方式包含它们才能访问它们?

我使用的是 Ruby 版本 1.8.7(Mac 上的最新版本)。

【问题讨论】:

    标签: ruby include bundle require


    【解决方案1】:

    我强烈建议使用RVM 来管理您的Ruby 安装,包括您的gem,所以如果您还没有它,请获取它并关注instructions for installing 它。确保你完成了修改 bash 启动脚本的工作,否则你会看到奇怪的行为,比如调用了错误的 Ruby。此外,请使用“RVM and RubyGems”中的步骤安装您的 gem,否则您可能会遇到奇怪的行为,因为 gem 安装在错误或意外的 Ruby 下。

    其次,使用gem命令安装gems:

    gem install gem_to_install
    

    将“gem_to_install”替换为您想要的 gem 的名称,它将安装到您的 Ruby 的相应 gem 文件夹中。

    如果您使用的是 Ruby 1.92,并尝试 require 将 gem 用作代码中的模块,请使用:

    require 'gemname'
    

    如果它是通过gem 命令安装的。而且,如果它是您编写的模块,或者在您的程序目录中或在它下面,请使用:

    require_relative 'path/to/gem/gemname'
    

    如果您使用的是 Ruby require 行上方添加 require 'rubygems',然后使用 require './path/to/gem/gemname'


    谢谢,但我的 .bundle 不在 gems 中。如何安装/需要我已有的 .bundle 文件?

    如果您编写了它,请查看 rubygems/gemcutterbundler 以获取有关捆绑和管理 gem 的信息。

    您可以在不使用应用程序的情况下安装 gem,方法是进入包含 gem 的目录并运行 setup.rb。请参阅http://i.loveruby.net/en/projects/setup/doc/usage.html 以获得体面的文章或官方文档:http://docs.rubygems.org/read/chapter/3

    【讨论】:

    • 谢谢,但我的 .bundle 不在 gems 中。如何安装/需要我已有的 .bundle 文件?
    • require_relative 也没有定义。在它之前我确实需要“rubygems”。
    • 您应该在问题中指定您使用的 Ruby 版本。如果不知道require_relative,我猜你使用的是 1.8.n 版本。
    • 我似乎使用的是 1.8.7 (ruby --version)。根据 ruby​​-lang.org,这是 Mac 上的最新版本。
    • 更基础一点,.bundle 和“gem”一样吗?我有这个由 Makefile 生成的文件,并且想要访问其中的函数。我认为它就像一个共享库或我可以包含的东西。它与我的脚本在同一个文件夹中,我尝试了“require 'my.bundle'”和“require 'my'”,但都不起作用。是不是有一些我可以复制到的文件夹之类的?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-22
    • 2013-05-04
    • 2021-11-04
    • 2014-08-11
    相关资源
    最近更新 更多