即使安装了gem,Ruby 2.0.0也无法加载此类文件

我已经尝试了人们在这里谈到的所有其他解决方案,但没有一个已经帮助/应用。

我编写了一个需要电子表格gem的Ruby脚本。 当我使用ruby myscript.rb正常执行脚本时,需要正常工作,但是在运行chmod +x myscript.rb ,然后尝试使用./myscript.rb运行程序时./myscript.rb以下错误….

 /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require': cannot load such file -- spreadsheet (LoadError) from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require' from /Users/fcangialosi/dev/mTC/parse.rb:2:in `' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require' from /Users/fcangialosi/dev/mTC/interpreter.rb:1:in `' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require' from ./pmcnp.rb:7:in `' 

我的脚本的开头看起来像这样:

 #!/usr/bin/ruby require 'rubygems' require 'spreadsheet' 

如果有人有任何想法,我会非常感激。

根据您对评论的回答,您正常运行的ruby – 以及安装gem的ruby – 是/Users/fcangialosi/.rbenv/shims/ruby 。 当您使脚本可执行时,它使用脚本中的提示来了解用于执行脚本的程序。 在您的情况下,您有:

 #!/usr/bin/ruby 

这就是使用你在/usr/bin/ruby安装的任何ruby版本。 为了使用你的rbenv ruby​​而不是/usr/bin/ruby ,将shebang行更改为:

 #!/usr/bin/env ruby