yarnエラー対応 [An unexpected error occurred: "https://registry.yarnpkg.com/flatmap-stream/-/flatmap-stream-0.1.2.tgz: Request failed \"404 Not Found\"]
  • 2019.07.26に公開
  • 2020.04.10に更新
  • 小ネタ集
  • 2. Nuxt.js

yarnコマンドエラーの発生

Nuxt.jsのアプリを作る際に下記コマンドでエラーが発生。

$ yarn global add create-nuxt-app

yarn global v1.17.3
[1/4] 🔍  Resolving packages...
[2/4] 🚚  Fetching packages...
error An unexpected error occurred: "https://registry.yarnpkg.com/event-stream/-/event-stream-3.3.6.tgz: Request failed \"404 Not Found\"".
info If you think this is a bug, please open a bug report with the information provided in "/Users/andou/.config/yarn/global/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/global for documentation about this command.

エラーの原因

どうやら、yarnが依存するパッケージにビットコインを盗むコードが埋め込まれていたらしい。。。

翻訳:event-stream事件の詳細

エラーの対応

yarnの依存パッケージを更新します。

ターミナルからyarn glogalへ移動

$ cd .config/yarn/global/

感染した依存パッケージを削除

node_modulesディレクトリにある「flatmap-stream」と「event-stream」を削除します。

「rm」は削除コマンドです。

$ rm -rf ./node_modules/flatmap-stream ./node_modules/event-stream

yarn.lockを削除

$ rm yarn.lock

再度インストール

yarnの依存パッケージを再インストールします。

$ yarn install

yarn install v1.17.3
warning package.json: No license field
info No lockfile found.
[1/4] 🔍  Resolving packages...

...

success Saved lockfile.
✨  Done in 96.20s.

success Saved lockfile.が出たら成功です。



これでyarnのコマンドが使えるようになります。

目視で確認しながら操作する

ターミナルでいきなり操作するのが怖い方は、自分の目で確認しながらの操作をお勧めします。

macで隠しディレクトリを表示する

macのフォルダーアプリを開いて「command」 + 「shift」 + 「.」を押します。

2019-07-26 18-39-28

この薄白く表示されている全てが隠しフォルダと隠しファイルです。

yarnの中に移動

今回削除したyarn.lockファイルは下記のディレクトリにあります。

ユーザ > (自分のユーザー名) > .config > yarn > global

感染したflatmap-streamとevent-streamはもう一つ奥のディレクトリにあります。

ユーザ > (自分のユーザー名) > .config > yarn > global > node_modules

「$ rm yarn.lock」コマンドを実行するとフォルダーアプリの中に表示されているyarn.lockも削除されているはずです。



目視で確認しながらだと少し安心ですね。(僕はかなり安心でした)

参考

https://github.com/yarnpkg/yarn/issues/6725#issuecomment-444702390

あなたの力になれること
私自身が独学でプログラミングを勉強してきたので、一人で学び続ける苦しみは痛いほど分かります。そこで、当時の私がこんなのあったら良いのにな、と思っていたサービスを立ち上げました。周りに質問できる人がいない、答えの調べ方が分からない、ここを聞きたいだけなのにスクールは高額すぎる。そんな方に向けた単発・短期間メンターサービスを行っています。
独学プログラマのサービス
独学プログラマ
独学でも、ここまでできるってよ。
CONTACT
Nuxt.js制作のご依頼は下記メールアドレスまでお送りください。