Ruby 需要导致未定义的局部变量
Ruby require causing undefined local variable
我完全是 Ruby 的菜鸟。我希望执行从 Amazon AWS IoT 页面获取的文件,但初始要求如下所示存在问题。
我正在使用 Ubuntu 18.04,我已经使用 sudo apt-get install ruby-full 安装了 ruby,还有 sudo gem 安装 mqtt 。该文件名为 iot-connector.rb。我用 ruby iot-connector.rb 执行文件。很明显它找不到这些require文件,但是我如何告诉Ruby找到它们。谢谢
require ‘rubygems’
require ‘mqtt’
#more code....
我得到的错误:
Traceback (most recent call last):
iot-connector.rb:1:in `<main>': undefined local variable or method `‘rubygems’'
for main:Object (NameError)
您使用了错误类型的引号,请使用常规引号而不是反引号:
require 'rubygems'
require 'mqtt'
反引号用于 运行 shell 命令,顺便说一句。你在这里得到 ruby 错误很奇怪,我希望这样的事情:
[29] pry(main)> `rubygems`
Errno::ENOENT: No such file or directory - rubygems
我完全是 Ruby 的菜鸟。我希望执行从 Amazon AWS IoT 页面获取的文件,但初始要求如下所示存在问题。
我正在使用 Ubuntu 18.04,我已经使用 sudo apt-get install ruby-full 安装了 ruby,还有 sudo gem 安装 mqtt 。该文件名为 iot-connector.rb。我用 ruby iot-connector.rb 执行文件。很明显它找不到这些require文件,但是我如何告诉Ruby找到它们。谢谢
require ‘rubygems’
require ‘mqtt’
#more code....
我得到的错误:
Traceback (most recent call last):
iot-connector.rb:1:in `<main>': undefined local variable or method `‘rubygems’'
for main:Object (NameError)
您使用了错误类型的引号,请使用常规引号而不是反引号:
require 'rubygems'
require 'mqtt'
反引号用于 运行 shell 命令,顺便说一句。你在这里得到 ruby 错误很奇怪,我希望这样的事情:
[29] pry(main)> `rubygems`
Errno::ENOENT: No such file or directory - rubygems