ruby - `bundle exec jekyll serve` 依赖意外中断
问题描述
这可能不是问题的地方,但我是 Jekyll 用户而不是 Ruby 用户(在 Jekyll 之外),所以这个问题很可能与我的版本控制中的某些东西有关。
虽然bundle exec jekyll serve
几天前运行在本地正确地为静态站点提供服务,但当我今天尝试它时它停止工作。相反,我收到了这个错误:
Could not find minitest-5.14.1 in any of the sources
Run `bundle install` to install missing gems.
运行时bundle install
,我收到这个:
Fetching gem metadata from https://rubygems.org/.........
zeitwerk-2.3.0 requires ruby version >= 2.4.4, which is incompatible with the current version, ruby 2.3.7p456
我知道我这里有一些旧版本,但我正在使用我知道的系统,并且到目前为止它一直很稳定。我没有更新 Ruby 或以其他方式对这些系统进行任何更改(我知道......)。我运行 macOS 10.14.6 并且最近也没有对操作系统进行任何更新。
返回的开始bundle env
:
Bundler 2.2.15
Platforms ruby, universal-darwin-18
Ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin18]
Full Path /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby
在查看了许多站点之后,很难知道要尝试更改哪些内容而不陷入需要(1)比我想要的更多地了解 Ruby 环境或(2)升级可能会破坏我的旧的东西的兔子洞杰基尔安装。
感谢您的任何建议。
更新...
我安装了两个版本,一个是 macOS 系统版本(2.3),另一个是 Homeborew(2.7)。为了解决这个问题,我听从了其他地方的建议,按照给定的说明设置了 rvm ,并安装了 3.0。我将其设置为默认值,但仍然收到相同的错误。
解决方案
回答自己,以防有人在这里结束:
使用 RVM 解决了这个问题,但我安装的是 3.0 而不是 Ruby 2.7。这导致了一系列不同的不兼容性。一旦我还添加了 2.7 并运行bundle install
,bundle exec jekyll serve
就能够正常启动。
推荐阅读
- azure - Invoke-AzureRmResourceAction 删除 Name 参数中的斜杠
- c# - Unity:如何为按钮的自动导航制作边框?
- python - Pandas - 根据其他 2 列的值创建一列
- jira - 使用过滤器查询在 JIRA 仪表板上显示子任务的父故事
- java - URLClassLoader 为某些条目抛出 ClassNotFoundException
- excel - 设置标题后立即没有图表标题错误
- android - 如何在 android searchview OnClose 监听器中获取视图
- c++ - 带有 QList 的 QT 应用程序
函数“追加” - c# - dotnet core IdentityModel 不会自省令牌
- python - 从根据其值排序的字典中创建一个新列表