gpt4 book ai didi

列出了 Ruby gem,但不会加载(用户目录中的 gem,而不是 ruby​​ 目录)

转载 作者:数据小太阳 更新时间:2023-10-29 06:37:17 24 4
gpt4 key购买 nike

我正在尝试让一些 gems 在支持 ruby​​ 和一些 ruby​​ gems 的网络主机上运行,​​但不是我需要使用的一些。

按照说明我找到了here ,我将原始 gem 位置保留在我的 gem 路径中,并将我自己的/path/to/my/home/gems 添加到 ~/.gemrc

gemhome: /users/home/myuser/gems
gempath:
- /usr/local/lib/ruby/gems/1.8
- /users/home/mysuser/gems

我手动下载了一些 gem,并使用 gem 命令的 --local 和 --install-dir 选项进行了安装。然后我做了一个“gem 列表”,实际上可以看到我在用户目录中安装的 gems,以及正常系统路径中的原始 gems。

如果我启动 IRB 或执行 ruby​​ -e,所有系统 gems 都可以正常工作。但是,我无法加载我的用户目录安装的 gems:

$ ruby -r rubygems -e "require 'nokogiri'"
/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:21:in `require__': no such file to load -- nokogiri (LoadError)
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:21:in `require'
from -e:1

我什至尝试了老派的 require_gem:

$ irb -r rubygems
irb(main):001:0> require_gem 'nokogiri'
Gem::LoadError: Could not find RubyGem nokogiri (> 0.0.0)

from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:204:in `report_activate_error'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:141:in `activate'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:37:in `require_gem_with_options'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:31:in `require_gem'
from (irb):1

从我的“ gem 列表”我可以看到:

nokogiri (1.3.3)
Nokogiri is an HTML, XML, SAX, and Reader parser

我对所有用户目录安装 gem 都有同样的问题。我在这里缺少什么?

编辑:这不是 Rails 应用程序。这是一个命令行应用程序。该程序将由我的用户帐户执行,就像上面显示的测试一样。

编辑:根据 Rafe 的建议,我查看了 IRB 的 Gem.path。它列出系统 gem 路径/usr/local/lib/ruby/gems/1.8,而不是我的用户目录路径。

最佳答案

我有同样的问题,我通过在 ruby​​ 文件的顶部添加以下内容来修复它

require 'rubygems'

希望对你有帮助

关于列出了 Ruby gem,但不会加载(用户目录中的 gem,而不是 ruby​​ 目录),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1260561/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com