2020.4.2

ビルド時にエラー「These dependencies were not found」が発生して処理に失敗する

Nuxt.jsで作成したプロジェクトにFirebaseのライブラリを追加したら「These dependencies were not found」というエラーが発生して、ビルドに失敗するようになりました。

目次

  • エラーの詳細
  • 対応方法
  • 参考リンク

エラーの詳細

ビルド失敗時に実際に出力されるエラーの内容は以下の通りです。

These dependencies were not found:

core-js/modules/es6.array.find in ./.nuxt/client.js
core-js/modules/es6.array.iterator in ./.nuxt/client.js
core-js/modules/es6.date.to-string in ./.nuxt/utils.js, ./.nuxt/components/nuxt.js
core-js/modules/es6.function.name in ./.nuxt/client.js, ./node_modules/babel-loader/lib??ref--2-0!./node_modules/vue-loader/lib??vue-loader-options!./pages/index.vue?vue&type=script&lang=js&
core-js/modules/es6.object.assign in ./.nuxt/client.js
core-js/modules/es6.object.keys in ./.nuxt/client.js, ./store/index.js
core-js/modules/es6.object.to-string in ./.nuxt/client.js, ./.nuxt/components/nuxt-link.client.js and 1 other
core-js/modules/es6.promise in ./.nuxt/client.js
core-js/modules/es6.regexp.constructor in ./.nuxt/utils.js
core-js/modules/es6.regexp.match in ./.nuxt/client.js
core-js/modules/es6.regexp.replace in ./.nuxt/utils.js, ./.nuxt/components/nuxt.js
core-js/modules/es6.regexp.search in ./.nuxt/utils.js
core-js/modules/es6.regexp.split in ./.nuxt/utils.js, ./node_modules/babel-loader/lib??ref--2-0!./node_modules/vue-loader/lib??vue-loader-options!./.nuxt/components/nuxt-build-indicator.vue?vue&type=script&lang=js&
core-js/modules/es6.regexp.to-string in ./.nuxt/utils.js, ./.nuxt/components/nuxt.js
core-js/modules/es6.string.includes in ./.nuxt/client.js, ./.nuxt/components/nuxt-link.client.js
core-js/modules/es6.string.iterator in ./.nuxt/client.js
core-js/modules/es6.string.repeat in ./.nuxt/utils.js
core-js/modules/es6.string.starts-with in ./.nuxt/utils.js
core-js/modules/es6.symbol in ./.nuxt/client.js, ./.nuxt/components/nuxt-link.client.js and 1 other
core-js/modules/es7.array.includes in ./.nuxt/client.js, ./.nuxt/components/nuxt-link.client.js
core-js/modules/es7.object.get-own-property-descriptors in ./.nuxt/index.js, ./store/index.js
core-js/modules/es7.promise.finally in ./.nuxt/client.js
core-js/modules/es7.symbol.async-iterator in ./.nuxt/client.js, ./.nuxt/components/nuxt-link.client.js
core-js/modules/web.dom.iterable in ./.nuxt/client.js, ./.nuxt/components/nuxt-link.client.js and 1 other

To install them, you can run: npm install --save core-js/modules/es6.array.find core-js/modules/es6.array.iterator core-js/modules/es6.date.to-string core-js/modules/es6.function.name core-js/modules/es6.object.assign core-js/modules/es6.object.keys core-js/modules/es6.object.to-string core-js/modules/es6.promise core-js/modules/es6.regexp.constructor core-js/modules/es6.regexp.match core-js/modules/es6.regexp.replace core-js/modules/es6.regexp.search core-js/modules/es6.regexp.split core-js/modules/es6.regexp.to-string core-js/modules/es6.string.includes core-js/modules/es6.string.iterator core-js/modules/es6.string.repeat core-js/modules/es6.string.starts-with core-js/modules/es6.symbol core-js/modules/es7.array.includes core-js/modules/es7.object.get-own-property-descriptors core-js/modules/es7.promise.finally core-js/modules/es7.symbol.async-iterator core-js/modules/web.dom.iterable

どうやら core-js 関連の依存関係で上手くいっていないようです。

対応方法

出力されたエラーの最後にcore-js関連のインストールコマンドが出力されていますが、こちらを実行してもエラーが発生してインストールはできませんでした。

調べると、どうやらcore-jsのバージョン2系のライブラリをインストールしないといけないようだったので、以下のコマンドでインストールします。

npm install --save core-js@2

yarnを使っている場合は以下の通り。

yarn add core-js@^2.6.11

さらにyarnをwindows環境(powershell)で実行する場合は、以下のようにして、メジャーバージョン(2.x.x)の固定を行います。

yarn add core-js@^^^^2.6.11

Windows(powershell)の場合、まさか^(キャレット)が4つも必要だとは思いませんでした。

参考リンク

Nuxt.js】関連記事