🫣
Prismaエラー ’@prisma/client did not initialize yet. ’の解決策
課題
初心者向けGraphQLのチュートリアルを行っていた際、prismaとの連携を行ったあたりからApolloServerでNetworkErrorが表示されるようになりました。
ターミナルでnpm run startをしたら、以下のエラーが発生しました。
Error: @prisma/client did not initialize yet. Please run "prisma generate" and try to import it again.
原因
色々試した結果、どうやら原因はnodeのversionがprismaに必要なversionよりも古いことだったようです。詳しくみていきましょう。
試したこと
とりあえず"prisma generate"を試したら、またエラーになったので、指示通り"npm i @prisma/client"を行った後に、再度"prisma generate"を行う、また同じエラーが出るの繰り返し。
Error: Could not resolve @prisma/client despite the installation that we just tried.
Please try to install it by hand with npm i @prisma/client and rerun npx "prisma generate" 🙏.
解決法を模索していたら同じようなエラーに苦戦していた仲間を発見!"npm install prisma --save-dev"を試してみる。
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: 'prisma@6.2.1',
npm WARN EBADENGINE required: { node: '>=18.18' },
npm WARN EBADENGINE current: { node: 'v18.17.1', npm: '9.6.7' }
npm WARN EBADENGINE }
npm ERR! code 1
nodeのversionが古くて対応していなかったみたい。NVMを使ってversionの変更をしていきます。
nvm install v18.20.5
Checksums matched!
Now using node v18.20.5 (npm v10.8.2)
無事変更ができました!"npm run start"も問題なく動いてくれました〜!よければご参考に。
Discussion