環境
macOS Catalina
$ npm version { npm: '6.14.9', ares: '1.16.1', brotli: '1.0.9', cldr: '37.0', icu: '67.1', llhttp: '2.1.3', modules: '83', napi: '7', nghttp2: '1.41.0', node: '14.15.3', openssl: '1.1.1g', tz: '2020a', unicode: '13.0', uv: '1.40.0', v8: '8.4.371.19-node.17', zlib: '1.2.11' }
エラー内容
npx create-react-app app-name
が失敗してしまいます。
昨日行った時はうまく実行できたのですが、同じ環境なのに失敗してしまいます。
エラーメッセージは
Unexpected end of JSON input while parsing near '...'
と出ます。 数回試しましたがnear以降は毎回違うようです。
試したこと
このエラー解消法をググるとよく出てくる以下方法を試しましたが、同じエラーが出てcreate-react-appがうまくいきません...
- npm cache clean (forceオプションでも試しました)
- npm cache verify
- node.js の再インストール
上記を試してから再度 npx create-react-app を実行
すると以下のようなエラーに変わりました
npm ERR! cb() never called! npm ERR! This is an error with npm itself. Please report this error at: npm ERR! <https://npm.community>
新しいエラーに対して試したこと
npm.community 内で色々調べて、上記エラーに対して提示されていたquick fixを実行しました
sudo chown -R $(whoami) ~/.npm
そしてもう一度npx create-react-app を実行しましたが、結果は同じでした...
他に試したほうがいいことや、原因と思われる部分があれば教えていただきたいです。よろしくお願いいたします。
インターネット接続が不安定だったりしませんか?
(インターネット接続が不安定なせいでパッケージのダウンロードに失敗する → 失敗したパッケージがキャッシュに残る → キャッシュが壊れてるせいで npm install に失敗する、という流れっぽいので、npm cache clean しても、インターネット接続が不安定なままなら同じことの繰り返しになるのでは…。)
インターネット接続が不安定かもしれないという部分は、考慮していませんでした...
さきほどもう一度キャッシュクリアしてcreate-react-appを実行したら、うまくいきました。
もしうまくいった理由がインターネット接続が安定していたからなのであれば、タイミングによって成功/失敗の結果が違うということにも合点がいきます
上記の
"パッケージダウンロード失敗 -> 失敗したパッケージがキャッシュに残る -> キャッシュが壊れているせいでnpm installに失敗する"
という流れについては考えていなかった部分でしたので、とても勉強になりました
ご意見本当にありがとうございます!
あなたの回答
tips
プレビュー