Rails `require': 无法加载文件--matrix。

32

更新至 Ruby 3.1.2 和 Rails 7.0.2.3 后,在启动 Rails 应用程序时出现以下错误:

`require': cannot load such file -- matrix (LoadError)

可能的解决方案是什么,提前致谢。

4个回答

47

Matrix在Ruby 3.1版本中被从标准库中移除。更多信息:https://www.ruby-lang.org/en/news/2021/12/25/ruby-3-1-0-released/

在Ruby 3.1中,需要显式地将matrix添加到Gemfile中。您可以手动添加或运行类似下面的命令:

$ bundle add matrix

将其添加到Gemfile后,对应用程序进行捆绑:

$ bundle install

那么你的应用程序应该继续像之前的 Ruby 版本一样运行。


将 combine_pdf 从 1.0.22 降级到 1.0.20 的解决方案。https://github.com/boazsegev/combine_pdf/issues/205 - Fernando Kosh

9

我也遇到了同样的问题,在将prawn添加到gemfile后,使用ruby 3.1.2, rails 7.0.4。我不得不在gemfile中添加gem 'matrix',这样就可以正常工作了。


谢谢,这对我也适用,还有prawnprawn-table的特定功能。 - undefined

8
我也遇到了这个问题,当我升级Rail 6->7和Ruby 3.0.0->3.1.2时。在我的情况下,该问题与Capybara gem有关。版本3.35.3假设它默认与Ruby一起安装。当我将Capybara升级到版本3.37.1时,矩阵gem也会自动安装,问题得到解决。

2

在添加 rubystats gem 用于一些种子数据后,我遇到了同样的问题,同时使用 ruby 3.1.2 和 rails 7.0.4。

@siasmj 的解决方法对我也有效。


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