🫣

Prismaエラー ’@prisma/client did not initialize yet. ’の解決策

2025/01/21に公開

課題

初心者向け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