next 14 버전 사용시 발생하는 next.js run 오류 발생 및 해결법

김동현·2023년 11월 7일
0

이슈 일기

목록 보기
4/6

문제상황
현재 next.js의 버전이 13.x.x 에서 14.0.0 으로 업데이트 되면서

pnpm run dev

위 명령어로 next.js를 실행할시
아래와 같은 에러를 보게 됐습니다.

class NextRequest extends Request {
                          ^

ReferenceError: Request is not defined
    at Object.<anonymous> (/Users/gimdonghyeon/Desktop/local_repository/nabi-market-client/node_modules/.pnpm/next@14.0.1_@babel+core@7.23.2_react-dom@18.0.0_react@18.0.0/node_modules/next/dist/server/web/spec-extension/request.js:28:27)
    at Module._compile (node:internal/modules/cjs/loader:1155:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1209:10)
    at Module.load (node:internal/modules/cjs/loader:1033:32)
    at Function.Module._load (node:internal/modules/cjs/loader:868:12)
    at Module.require (node:internal/modules/cjs/loader:1057:19)
    at Module.mod.require (/Users/gimdonghyeon/Desktop/local_repository/nabi-market-client/node_modules/.pnpm/next@14.0.1_@babel+core@7.23.2_react-dom@18.0.0_react@18.0.0/node_modules/next/dist/server/require-hook.js:64:28)
    at require (node:internal/modules/cjs/helpers:103:18)
    at Object.<anonymous> (/Users/gimdonghyeon/Desktop/local_repository/nabi-market-client/node_modules/.pnpm/next@14.0.1_@babel+core@7.23.2_react-dom@18.0.0_react@18.0.0/node_modules/next/dist/server/web/spec-extension/adapters/next-request.js:37:18)
    at Module._compile (node:internal/modules/cjs/loader:1155:14)

원인
위 에러의 원인은 next.js를 14 버전으로 사용하기위해 노드 버전을 18버전으로 업데이트 하지 않았기 때문입니다.

해결
따라서 아래와 같은 과정을 따라 해결하시면 됩니다.

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash

터미널 껐다가 다시 켜기

nvm install 18.17.0
nvm use 18.17.0

참고: https://github.com/vercel/next.js/issues/57214

profile
有備無患 : 미리 대비하고 있으면 걱정할 일이 없다

0개의 댓글