Part 8. 문제 해결

8.3

읽기 15분

자주 만나는 에러 10가지

여기서는 초보자가 가장 자주 만나는 에러 10가지를 정리합니다. 지금 다 외울 필요는 없습니다. 에러가 나왔을 때 이 페이지를 찾아보시면 됩니다.


에러 사전

번호 에러 메시지 무슨 뜻인지 해결 방법
1 Module not found: Can't resolve '...' 필요한 부품이 설치 안 됨 터미널에서 npm install 실행
2 Cannot read properties of undefined 아직 준비되지 않은 데이터를 사용하려 함 AI에게 에러를 보여주고 수정 요청
3 Port 3000 is already in use 다른 프로그램이 이미 3000번을 쓰고 있음 다른 터미널을 닫거나, npm run dev -- -p 3001 실행
4 NEXT_PUBLIC_SUPABASE_URL is not defined 환경 설정 파일이 없음 .env.local 파일이 있는지 확인
5 git: command not found Git이 설치되어 있지 않음 Git을 설치 (1편에서 했던 방법 참고)
6 Hydration failed 서버와 브라우저의 내용이 다름 AI에게 에러를 보여주고 수정 요청
7 401 Unauthorized 비밀번호(API 키)가 틀리거나 만료됨 API 키를 확인하고 다시 입력
8 npm ERR! 설치 과정에서 문제 발생 node_modules 폴더 삭제 후 npm install 다시 실행
9 SyntaxError: Unexpected token 코드에 오타가 있음 AI에게 해당 파일을 확인해달라고 요청
10 Build failed 배포용 빌드 중 에러 발생 npm run build를 먼저 로컬에서 실행해 보고 에러 수정

에러별 상세 설명

1. Module not found

"부품이 없다"는 뜻입니다.

레시피에 "올리브유"가 필요한데 냉장고에 없는 것과 같습니다. 필요한 부품을 설치하면 됩니다.


npm install lucide-react

AI가 코드에서 사용한 부품 이름을 알려줄 테니, 그대로 설치하면 됩니다.

2. Cannot read properties of undefined

"아직 준비 안 됐는데 쓰려고 했다"는 뜻입니다.

데이터를 인터넷에서 가져오는 중인데, 다 가져오기도 전에 사용하려고 할 때 나타납니다. AI에게 보여주면 "데이터가 준비될 때까지 기다리는 코드"를 추가해 줍니다.

3. Port 3000 is already in use

"이미 다른 프로그램이 이 자리를 쓰고 있다"는 뜻입니다.

이전에 실행한 개발 서버가 아직 돌아가고 있을 때 나타납니다. 다른 터미널 창을 확인해서 닫거나, 다른 번호(3001)를 사용하면 됩니다.

4. 환경 변수 관련 에러

"비밀 정보가 담긴 파일을 못 찾겠다"는 뜻입니다.

프로젝트 폴더에 .env.local 파일이 있는지 확인하세요. 이 파일에는 데이터베이스 주소나 API 키 같은 정보가 들어있습니다.

5~10. 나머지 에러들

위 표를 참고하시고, 해결이 안 되면 에러 메시지 전체를 AI에게 보여주세요. AI가 상황에 맞는 해결 방법을 알려줍니다.


에러 해결의 황금 규칙

어떤 에러든 이 순서를 따르면 대부분 해결됩니다:

  1. 에러 메시지를 읽는다 (마지막 줄부터)
  2. 위 표에서 비슷한 에러를 찾아본다
  3. 표에 없으면 에러 메시지를 AI에게 보여준다
  4. AI가 알려준 대로 수정한다
  5. 파일을 저장하고 확인한다

이 다섯 단계를 기억하세요. 에러가 나와도 이 순서대로 하면 항상 해결할 수 있습니다.


이 절의 요약

  • 초보자가 자주 만나는 에러는 패턴이 정해져 있습니다
  • Module not foundnpm install, Port in use다른 터미널 닫기로 해결합니다
  • 이 페이지를 즐겨찾기해 두고, 에러가 나올 때마다 찾아보세요
  • 표에 없는 에러는 AI에게 보여주면 해결 방법을 알려줍니다
  • 에러 해결의 핵심은 당황하지 않고, 차근차근 읽는 것입니다