即使已将gem添加到Gemfile并运行bundle install,仍然无法使用该gem。

5

我正在制作一个简单的任务,需要解析XML Http响应,所有的http都正常工作,并且我有我的xml字符串....

我尝试使用xml-simple宝石。

我已经执行了gem install xml-simple

我还将gem'xml-simple'添加到gemfile中

成功运行了bundle install

但是当我在我的rake任务中尝试require 'xml-simple'时,它会失败并显示no such file to load -- xml-simple...

我错过了什么???

2个回答

8

Bundler尝试通过使用gem名称作为require路径(即require 'xml-simple')来加载gem。但是,在xml-simple gem的情况下,路径是xmlsimple,而不是xml-simple

因此,在您的Gemfile中,请改用以下内容:

gem 'xml-simple', :require => 'xmlsimple'

@jondavidjohn 这是针对 gem 的特定情况。较新的 gem 通常遵循这种约定。但错误信息非常具有指示性。因此,当您看到它时,只需检查 gem 的文档即可。 - htanata

0

宝石有时具有不同于宝石名称的要求路径,请尝试以下任一方式:

gem 'xml-simple',:require => 'xml/simple'

或者

gem 'xml-simple',:require => 'xmlsimple'

或者使用正确的要求路径指定


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接