【问题标题】:Getting error while running ruby script运行 ruby​​ 脚本时出错
【发布时间】:2017-02-05 20:10:49
【问题描述】:

我正在尝试运行一个 ruby​​ 脚本,它基本上是一个 Stomp 客户端来调用 ActiveMQ 代理。

当我运行脚本时,我得到这个错误:

going to startC:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:5
4:in `require': cannot load such file -- stomp (LoadError)
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54
:in `require'
        from C:/Users/lokesh.kumar/Documents/issues/ActiveMQ-slowness/activemq-c
acti-plugin.rb:34:in `<main>'

以下是命令gem env的结果

C:\Users\lokesh.kumar>gem env
RubyGems Environment:
  - RUBYGEMS VERSION: 2.4.5.1
  - RUBY VERSION: 2.2.5 (2016-04-26 patchlevel 319) [x64-mingw32]
  - INSTALLATION DIRECTORY: C:/Ruby22-x64/lib/ruby/gems/2.2.0
  - RUBY EXECUTABLE: C:/Ruby22-x64/bin/ruby.exe
  - EXECUTABLE DIRECTORY: C:/Ruby22-x64/bin
  - SPEC CACHE DIRECTORY: Z:/.gem/specs
  - SYSTEM CONFIGURATION DIRECTORY: C:/ProgramData
  - RUBYGEMS PLATFORMS:
    - ruby
    - x64-mingw32
  - GEM PATHS:
     - C:/Ruby22-x64/lib/ruby/gems/2.2.0
     - Z:/.gem/ruby/2.2.0
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - https://rubygems.org/
  - SHELL PATH:
     - C:\oracle\product\11.2.0\client_1\bin
     - C:\Windows\system32
     - C:\Windows
     - C:\Windows\System32\Wbem
     - C:\Windows\System32\WindowsPowerShell\v1.0\
     - C:\Program Files\TortoiseHg\
     - C:\Program Files\TortoiseSVN\bin
     - C:\Program Files (x86)\Enterprise Vault\EVClient\
     - C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static
     - C:\Program Files (x86)\GitExtensions\
     - C:\Program Files (x86)\AMD\ATI.ACE\Core-Static
     - C:\Program Files (x86)\Skype\Phone\
     - c:\Program Files\TortoiseGit\bin
     - C:\Ruby22-x64\bin
     - C:\Users\lokesh.kumar\.babun
     - D:\Installations\apache-maven-3.2.5\bin
     - C:\Program Files\Java\jdk1.8.0_91\bin

我从未使用过 Ruby,所以这可能是一个基本的安装错误。有什么办法解决这个问题吗?

【问题讨论】:

  • 你安装了 stomp gem 吗?请显示gem which stomp的输出。
  • @Aleksey:它说“错误:找不到 ruby​​ 库文件或共享库 stomp”。你能给我安装 Stomp 的命令吗?
  • 安装 gem 运行 gem install GEMNAME。在这种特殊情况下gem install stomp
  • @Aleksey:非常感谢。终于问题解决了。如果您可以添加您的评论作为答案,那么我会接受它。

标签: ruby-on-rails ruby windows-7 rubygems stomp


【解决方案1】:

好像你没有安装stomp gem。
您可以使用 gem install GEMNAME 安装任何您想要的 gem。

在您的特定情况下,GEMNAMEstomp
所以尝试运行gem install stomp 并再次运行您的脚本。

附言
默认情况下,gem install 命令使用rubygems 作为 gem 源。
因此,您可以随时在此处查看宝石名称。

【讨论】: