我整天都在训练来解决这个问题,但我做不到。
问题很简单,我不想在每次需要宝石时都添加 require 'rubygems' 行...
如果我将 require 'rubygems' 放在任何其他“require”之前,则文件运行完美,但如果我不放置 require 'rubygems' 行,则会发生以下错误:
(...)在“要求”中:没有要加载的文件——“宝石名”(LoadError)
我怀疑可能还有一些路径可以检查 gems 存储库。
我想问你是否有办法做到这一点。
非常感谢。
干杯,胡安。
你可以调用你的红宝石脚本
ruby -rubygems script.rb
或将 rubygems 添加到 RUBYOPT
$ export RUBYOPT="rubygems"
放
require 'rubygems'
作为你的 ruby 代码的第一行并且是安全的。当然,您可以使用 -rubygems 开关(如 Peter Krenn 所写)而不是它来调用
在 Unix 中,您可以:
$ RUBYOPT="rubygems"
$ export RUBYOPT
$ ruby juans_masterpiece.rb
在 Windows 中:
SET RUBYOPT=rubygems
或者右键单击我的电脑->属性->高级->环境变量,然后最后在那里添加 RUBYOPT 变量。下次您打开 cmd.exe 运行时set,它就会出现。
您不必在每次需要宝石时都放置它——您只需在第一次需要宝石之前就拥有它。当你需要 Rubygems 时,它会用一个特殊的 require 替换默认的 require,它可以完成所有 Rubygems 的魔力。
但这只是在 1.8 中。在 Ruby 1.9 中,您根本不需要 Rubygems — 所以只要您不依赖于 1.8 特定的东西,这是一个非常容易解决问题的方法。
右键单击计算机图标,然后选择属性,然后选择附加系统参数,然后选择环境变量,有一个用于更改选项的 GUI,单击创建,输入名称和值,确定。这是您如何在 Windows 7 上执行此操作的大致翻译,如果您找不到该位置,请尝试使用 google 搜索“更改 {your windows version here} 中的环境变量”