ERR_PACKAGE_PATH_NOT_EXPORTED 해결 방법(node v18)

기존에 React.js로 개발했던 프로젝트를 간만에 열었는데, 오류가 나면서 개발 모드 실행이 되지 않나요? ERR_PACKAGE_PATH_NOT_EXPORTED 오류 해결 방법을 함께 알아보겠습니다.

ERR_PACKAGE_PATH_NOT_EXPORTED 오류 발생 원인

기존에 개발했던 프로젝트를 열고, yarn install 후 아래 그림 1과 같이 오류 메시지를 만났습니다.

메시지를 보면 postcss-safe-parser 패키지에 Package subpath 가 정의되지 않았다고 합니다. 그런데 분명 이전에 작업할 때는 이런 문제가 생기지 않았단 말이죠.

그림 1. ERR_PACKAGE_PATH_NOT_EXPORTED 오류 발생
그림 1. ERR_PACKAGE_PATH_NOT_EXPORTED 오류 발생

기존에 프로젝트를 개발할 때와 현재와의 차이가 있다면 node.js 버전의 차이 말고는 다른 원인이 없을 것이라 생각했습니다. 비교적 최근에 SvelteKit 사용을 하면서 node.js 버전을 v18.12.1로 올려서 사용했었는데, 분명 그 이유일 거라는 감이 왔습니다.

ERR_PACKAGE_PATH_NOT_EXPORTED 오류 해결 방법

저는 nvm을 사용해서 node version을 관리하고 있었기에 기존에 개발했던 버전인 16.15.1를 사용하겠다고 아래와 같이 명령어를 사용했습니다.

nvm use 16.15.1
ShellScript

명령어를 실행하면 아래와 같이 이제부터 node v16.15.1을 사용한다고 안내해 줍니다.

그림 2. nvm 이용하여 사용할 node 버전 지정
그림 2. nvm 이용하여 사용할 node 버전 지정

node 버전이 바뀌었으니 node_modules를 다시 설치해 주어야 합니다. yarn 또는 yarn install 명령어를 통해 패키지들을 설치해 줍니다.

yarn
ShellScript

무사히 패키지 설치가 아래 그림과 같이 진행됐습니다.

그림 3. yarn 명령어 사용하여 node_modules 설치
그림 3. yarn 명령어 사용하여 node_modules 설치

그리고 yarn start 명령어로 개발 서버를 구동했더니 멀쩡하게 잘 돌아가는 걸 확인했습니다.

위와 같이 했는데도 안 되는 분들은, 아래와 같이 yarn.lock과 node_modules 모두 삭제하고 다시 yarn 명령어로 패키지를 설치해 보시기 바랍니다.

rm yarn.lock
rm -rf node_modules
yarn
ShellScript

동일한 문제를 겪는 분들 계시다면 도움이 되길 바랍니다.

관련 자료

StackOverflow에도 관련 오류에 대한 질문과 답변이 있어서 참고했습니다.

같이 읽으면 좋은 글

Leave a Comment