Techioz Blog

バンドラー: コマンドのロードに失敗しました: jekyll

概要

Bundle exec jekyllserve を実行すると、bundler: failed toload command: jekyll が表示されます

MacOS 12.0.1

Gemfile:

gem "jekyll", "~> 4.2"

# Plugins
group :jekyll_plugins do
  gem "jekyll-admin" # https://github.com/jekyll/jekyll-admin
  gem "jekyll-feed" # https://github.com/jekyll/jekyll-feed
  gem "jekyll-seo-tag", github: "jekyll/jekyll-seo-tag" # https://github.com/jekyll/jekyll-seo-tag
  gem "jekyll-archives" # https://github.com/jekyll/jekyll-archives
  gem "jekyll-typogrify" # https://github.com/myles/jekyll-typogrify
  gem "jekyll-autoprefixer" # https://github.com/vwochnik/jekyll-autoprefixer
  gem "jekyll-sitemap" # https://github.com/jekyll/jekyll-sitemap
end

gem "webrick", "~> 1.7"
gem "json", "~> 2.6"

Bundle exec jekyllserve –trace は次のようになります。

/Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/3.0.0/pathname.rb:20: warning: already initialized constant Pathname::TO_PATH
/Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/pathname-0.2.0/lib/pathname.rb:20: warning: previous definition of TO_PATH was here
/Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/3.0.0/pathname.rb:22: warning: already initialized constant Pathname::SAME_PATHS
/Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/pathname-0.2.0/lib/pathname.rb:22: warning: previous definition of SAME_PATHS was here
/Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/3.0.0/pathname.rb:34: warning: already initialized constant Pathname::SEPARATOR_LIST
/Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/pathname-0.2.0/lib/pathname.rb:34: warning: previous definition of SEPARATOR_LIST was here
/Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/3.0.0/pathname.rb:35: warning: already initialized constant Pathname::SEPARATOR_PAT
/Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/pathname-0.2.0/lib/pathname.rb:35: warning: previous definition of SEPARATOR_PAT was here
/Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/3.0.0/pathname.rb:41: warning: already initialized constant Pathname::ABSOLUTE_PATH
/Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/pathname-0.2.0/lib/pathname.rb:41: warning: previous definition of ABSOLUTE_PATH was here
Doing `require 'backports'` is deprecated and will not load any backport in the next major release.
Require just the needed backports instead, or 'backports/latest'.
Configuration file: /Users/jrdnbwmn/Documents/Repos/GitHub/learnuxd/_config.yml
            Source: /Users/jrdnbwmn/Documents/Repos/GitHub/learnuxd
       Destination: /Users/jrdnbwmn/Documents/Repos/GitHub/learnuxd/_site
 Incremental build: disabled. Enable with --incremental
      Generating... 
       Jekyll Feed: Generating feed for posts
bundler: failed to load command: jekyll (/Users/jrdnbwmn/.rbenv/versions/3.0.2/bin/jekyll)
eval (eval at <anonymous> ((execjs):1:213), <anonymous>:1:10): TypeError: Cannot read property 'version' of undefined (ExecJS::ProgramError)
    from (execjs):1:213
    from (execjs):19:14
    from (execjs):1:40
    from Object.<anonymous> ((execjs):1:58)
    from Module._compile (internal/modules/cjs/loader.js:1085:14)
    from Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
    from Module.load (internal/modules/cjs/loader.js:950:32)
    from Function.Module._load (internal/modules/cjs/loader.js:790:12)
    from Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:76:12)
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/execjs-2.8.1/lib/execjs/external_runtime.rb:39:in `exec'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/execjs-2.8.1/lib/execjs/external_runtime.rb:21:in `eval'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/execjs-2.8.1/lib/execjs/runtime.rb:64:in `eval'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/autoprefixer-rails-9.8.6.5/lib/autoprefixer-rails/processor.rb:170:in `runtime'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/autoprefixer-rails-9.8.6.5/lib/autoprefixer-rails/processor.rb:53:in `process'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/autoprefixer-rails-9.8.6.5/lib/autoprefixer-rails.rb:16:in `process'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-autoprefixer-1.0.2/lib/jekyll/autoprefixer/autoprefixer.rb:27:in `block (2 levels) in process'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-autoprefixer-1.0.2/lib/jekyll/autoprefixer/autoprefixer.rb:23:in `open'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-autoprefixer-1.0.2/lib/jekyll/autoprefixer/autoprefixer.rb:23:in `block in process'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-autoprefixer-1.0.2/lib/jekyll/autoprefixer/autoprefixer.rb:20:in `each'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-autoprefixer-1.0.2/lib/jekyll/autoprefixer/autoprefixer.rb:20:in `process'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-autoprefixer-1.0.2/lib/jekyll-autoprefixer.rb:24:in `block in <top (required)>'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/hooks.rb:103:in `block in trigger'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/hooks.rb:102:in `each'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/hooks.rb:102:in `trigger'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/site.rb:234:in `write'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/site.rb:82:in `process'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/command.rb:28:in `process_site'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/commands/build.rb:65:in `build'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/commands/build.rb:36:in `process'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/command.rb:91:in `block in process_with_graceful_fail'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/command.rb:91:in `each'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/command.rb:91:in `process_with_graceful_fail'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/lib/jekyll/commands/serve.rb:86:in `block (2 levels) in init_with_program'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `block in execute'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `each'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `execute'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/mercenary-0.4.0/lib/mercenary/program.rb:44:in `go'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/mercenary-0.4.0/lib/mercenary.rb:21:in `program'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/jekyll-4.2.1/exe/jekyll:15:in `<top (required)>'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/bin/jekyll:25:in `load'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/bin/jekyll:25:in `<top (required)>'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/site_ruby/3.0.0/bundler/cli/exec.rb:58:in `load'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/site_ruby/3.0.0/bundler/cli/exec.rb:58:in `kernel_load'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/site_ruby/3.0.0/bundler/cli/exec.rb:23:in `run'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/site_ruby/3.0.0/bundler/cli.rb:478:in `exec'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/site_ruby/3.0.0/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/site_ruby/3.0.0/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/site_ruby/3.0.0/bundler/vendor/thor/lib/thor.rb:392:in `dispatch'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/site_ruby/3.0.0/bundler/cli.rb:31:in `dispatch'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/site_ruby/3.0.0/bundler/vendor/thor/lib/thor/base.rb:485:in `start'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/site_ruby/3.0.0/bundler/cli.rb:25:in `start'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/bundler-2.2.30/exe/bundle:49:in `block in <top (required)>'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/site_ruby/3.0.0/bundler/friendly_errors.rb:103:in `with_friendly_errors'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/bundler-2.2.30/exe/bundle:37:in `<top (required)>'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/bin/bundle:23:in `load'
    from /Users/jrdnbwmn/.rbenv/versions/3.0.2/bin/bundle:23:in `<main>'

gem env は次のように与えます:

RubyGems Environment:
  - RUBYGEMS VERSION: 3.2.30
  - RUBY VERSION: 3.0.2 (2021-07-07 patchlevel 107) [arm64-darwin21]
  - INSTALLATION DIRECTORY: /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0
  - USER INSTALLATION DIRECTORY: /Users/jrdnbwmn/.gem/ruby/3.0.0
  - RUBY EXECUTABLE: /Users/jrdnbwmn/.rbenv/versions/3.0.2/bin/ruby
  - GIT EXECUTABLE: /opt/homebrew/bin/git
  - EXECUTABLE DIRECTORY: /Users/jrdnbwmn/.rbenv/versions/3.0.2/bin
  - SPEC CACHE DIRECTORY: /Users/jrdnbwmn/.gem/specs
  - SYSTEM CONFIGURATION DIRECTORY: /Users/jrdnbwmn/.rbenv/versions/3.0.2/etc
  - RUBYGEMS PLATFORMS:
     - ruby
     - arm64-darwin-21
  - GEM PATHS:
     - /Users/jrdnbwmn/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0
     - /Users/jrdnbwmn/.gem/ruby/3.0.0
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - https://rubygems.org/
  - SHELL PATH:
     - /Users/jrdnbwmn/.rbenv/versions/3.0.2/bin
     - /opt/homebrew/Cellar/rbenv/1.2.0/libexec
     - /Users/jrdnbwmn/.rbenv/shims
     - /opt/homebrew/bin
     - /opt/homebrew/sbin
     - /usr/local/bin
     - /usr/bin
     - /bin
     - /usr/sbin
     - /sbin
     - /Library/Apple/usr/bin
     - /Users/jrdnbwmn/bin

いくつかの解決策(バンドルとjekyllの更新と再インストール、webrickとjson gemの追加など)を試しましたが、役に立ちませんでした。これは新しいマシンなので、何かが間違って設定されているはずですが、それが何かはわかりません。

解決策

github ページをセットアップしようとして問題に遭遇したときに、この質問に遭遇しました。 homebrew webrick でインストールされる Ruby の最新バージョンにはデフォルトで含まれていないようです。 github の問題は次のとおりです: https://github.com/github/pages-gem/issues/752。 Ruby 2.7 を使用するか、以下のコマンドを使用して Webrick を手動で追加することをお勧めします。

bundle add webrick

そしてコマンドを繰り返します

bundle exec jekyll serve