当我运行一个名为wc.rb的文件时,我总是收到一个错误。 我input:
ruby wc.rb
但我不断收到这个错误:
/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require': cannot load such file -- nokogiri (LoadError) from /usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require' from wc.rb:3:in `<main>'
但是,它运行时,我运行相同的脚本:
sudo ruby wc.rb
有什么我可以做的,所以我不必作为超级用户运行这个脚本?
当你用sudo
运行的时候,你运行的是相同版本的Ruby? 如果sudo ruby -v
返回与ruby -v
不同的东西,那么您可能只在Ruby 2.0 gem位置安装了Nokogiri gem,而不是与您的系统默认版本的Ruby相关联的gem位置。
更新:如果您最初使用sudo
安装了Nokogiri gem,那么您也可能需要首先使用sudo( sudo gem uninstall nokogiri
)来卸载它,然后重新安装它,而不使用sudo
( gem install nokogiri
)以使权限正确。