我是Ruby的新手。我有一个.bundle文件。我把它放在源文件夹中并做了
require('my.bundle')
但是当我调用bundle中的方法时,找不到定义。我是否必须安装它们或以其他方式包含它们才能访问它们?
我使用的是Ruby版本1.8.7(Mac上的最新版本)。
谢谢, 乙
答案 0 :(得分:1)
我强烈建议您使用RVM
管理您的Ruby安装,包括您的宝石,所以如果您还没有,请获取它并按照instructions for installing进行操作。确保你做了关于修改bash启动脚本的部分,否则你会看到奇怪的行为,就像调用错误的Ruby一样。另外,使用“RVM and RubyGems”中的步骤来安装你的宝石,或者你可以在错误或意外的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< 1.9您还需要将require 'rubygems'
添加到其他require
行之上,然后使用require './path/to/gem/gemname'
。
谢谢,但我的.bundle不在宝石中。如何安装/需要我已经拥有的.bundle文件?
如果你写了它,请查看rubygems/gemcutter
或bundler
,了解有关捆绑和管理宝石的信息。
您可以在不使用应用程序的情况下安装gem,方法是进入包含gem并运行setup.rb
的目录。请参阅http://i.loveruby.net/en/projects/setup/doc/usage.html获取体面的文章或官方文档:http://docs.rubygems.org/read/chapter/3