`require "rubygems"` 返回 `false` 可以吗?
Is `require "rubygems"` returning `false` ok?
要求 "rubygems"
得到 false
,但要求 "appium_lib"
得到 true
。即,
require 'rubygems' # => false
require 'appium_lib' # => true
这样可以吗?这不像试图要求一些实际上不存在的东西,即:
require 'does_not_existxxxxxxx' # => LoadError: cannot load such file -- does_not_existxxxxxxx
应该没问题。第二次请求文件会导致错误响应。对于 load
,这是另一回事,每次请求时都会 load
(require
) 文件。
所以这只是意味着 irb 开始时已经需要 rubygems
,这并不奇怪。
例如,load
在Rails开发模式中大量使用,因此您的更改可以立即显示。
因为 Ruby 自动需要 1.9 rubygems。
当你 require
一个 gem 时,实际上你只是将那个 gem 的 lib 目录放到你的 $LOAD_PATH。如果它 returns 为假,则意味着它已经在您的 $LOAD_PATH 中。
要求 "rubygems"
得到 false
,但要求 "appium_lib"
得到 true
。即,
require 'rubygems' # => false
require 'appium_lib' # => true
这样可以吗?这不像试图要求一些实际上不存在的东西,即:
require 'does_not_existxxxxxxx' # => LoadError: cannot load such file -- does_not_existxxxxxxx
应该没问题。第二次请求文件会导致错误响应。对于 load
,这是另一回事,每次请求时都会 load
(require
) 文件。
所以这只是意味着 irb 开始时已经需要 rubygems
,这并不奇怪。
例如,load
在Rails开发模式中大量使用,因此您的更改可以立即显示。
因为 Ruby 自动需要 1.9 rubygems。
当你 require
一个 gem 时,实际上你只是将那个 gem 的 lib 目录放到你的 $LOAD_PATH。如果它 returns 为假,则意味着它已经在您的 $LOAD_PATH 中。