
비개발 PM을 위한 환경 구축 생존 가이드 (후편) — 난관 극복하기
요약
비개발 PM이 Lovable로 만든 프로토타입을 로컬 환경(Cursor)으로 이전할 때 발생하는 주요 에러와 해결 방법을 다룹니다. Node.js 버전 문제, 권한 설정, 환경 변수 누락 등 실무적인 트러블슈팅 가이드를 제공합니다.
핵심 포인트
- Node.js 20 이상 LTS 버전 사용 권장
- npm 권한 에러 시 sudo 대신 prefix 설정 활용
- Lovable 프로젝트 로컬 이행 시 .env 파일 복원 필수
- 에러 발생 시 AI(Cursor, Claude) 활용을 위한 프롬프트 템플릿 사용
단계 4: 환경 구축에서 막혔을 때 대처법
여기가 이 글의 핵심입니다. 에러는 반드시 발생합니다. 중요한 것은 그때 어떻게 하느냐입니다.
막히기 포인트 TOP3와 처방전
1위: Node.js / npm 버전 불일치
npm install로 실행했을 때 gyp ERR!나 ModuleNotFoundError: No module named 'distutils'가 발생합니다. 이것은 2026년에 가장 빈번하게 발생하는 에러입니다.
원인: Python 3.13 업데이트로 인해 distutils 패키지가 표준 라이브러리에서 삭제되었습니다. 구형 Node.js(버전 20 미만)는 이 변경에 대응하지 못하여 빌드 프로세스가 무너집니다.
처방전: Node.js 20 이상(LTS)으로 업데이트하세요. nvm (Node Version Manager)을 사용하면 여러 버전을 안전하게 관리할 수 있습니다.
2위: 경로(PATH) 설정 및 권한 에러
Mac에서 npm install -g를 실행하면 EACCES: permission denied가 발생합니다. sudo로 억지로 돌파해서는 안 됩니다. npm이 생성하는 파일의 소유자가 root로 바뀌어, 이후 모든 작업에 sudo가 필요하게 되는 '부정적 연쇄'가 시작됩니다. 처방전:
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
# ~/.zshrc에 다음을 추가
...
3위: 환경 변수(.env)의 소실
Lovable에서 완벽하게 작동하던 프로젝트를 GitHub로 내보내어 로컬에서 실행하면 '로그인할 수 없다', '데이터가 표시되지 않는다'는 문제가 발생합니다. 에러 메시지도 나오지 않습니다.
원인: API 키나 DB 연결 문자열이 .gitignore에 의해 제외되어, 로컬 환경에는 해당 키가 존재하지 않기 때문입니다. 브라우저 툴 상에서는 플랫폼 측에서 이들을 관리하고 주입해주었습니다.
처방전: Lovable의 '설정 → Integrations'에서 Supabase의 URL과 Anon Key를 복사하여, 로컬 프로젝트 루트에 .env.local 파일을 만들고 붙여넣으세요.
에러가 발생했을 때 만능 프롬프트
에러가 나면 당황하지 말고, 빨간 글자를 전부 복사하여 다음 템플릿에 붙여 넣은 후 Cursor나 Claude.ai에게 전달하세요.
【상황】비개발 PM입니다. 로컬 환경에서 프로젝트를 실행 중입니다.
【실행한 명령어】(여기에 붙일 것)
【에러 전문】(여기에 빨간 글자를 전부 복사/붙여넣기)
...
에러는 실패가 아닙니다. AI에게 입력하는 데이터입니다.
단계 5: 브라우저에서 로컬로의 이행 (Ejection)
Lovable으로 만든 프로토타입을 Cursor로 가져오는 절차를 '에젝션(Ejection)'이라고 부릅니다.
이행 플로우 (6단계)
-
Lovable 측에서 GitHub 연동 활성화 → 프로젝트 화면 우측 상단의 'GitHub 아이콘' → 'Connect GitHub'
-
GitHub에 코드 푸시 → 새로운 리포지토리가 자동 생성됩니다
-
로컬에 클론 → 터미널에서
git clone [리포지토리 URL] -
환경 변수 복원 (위의 .env 처방전 참조)
-
의존성 설치 →
npm install
→ npm run dev
- Cursor의 Composer에 컨텍스트 전달 → '이 코드베이스 전체를 읽어달라'고 지시
'에러 없이 한 번에 성공할 것'이라고 생각하지 마세요. npm install에서 경고가 뜨거나, 포트 사용 중이라는 에러가 발생할 수 있습니다. 하지만 이것들은 모두 단계 4의 템플릿으로 해결할 수 있습니다.
Git은 '세이브 포인트'만 기억하면 됩니다
PM이 Git에서 기억해야 할 명령어는 단 4가지입니다. 브랜치 전략도, GitFlow도 필요 없습니다.
git init # 프로젝트 초기화 (최초 1회만)
git add . # 변경 사항을 스테이지에 올리기
git commit -m
`-m "메시지"`와 `git commit`을 수행하고 있다면, 언제든지 직전의 동작하는 상태로 롤백(Rollback)할 수 있습니다.
**Git은 위협이 아니라, 최강의 세이프티넷 (Safety Net)입니다.**
## 요약 —— 벽의 정체는 「불확실성」이었다
환경 구축의 벽의 정체는 기술적인 어려움이 아니라 **심리적인 불확실성**이었습니다.
- 에러의 빨간 글씨는 「파괴의 통지」가 아니라 「정보 제공」
- 터미널 (Terminal)은 「콕핏 (Cockpit)」이 아니라 「AI와의 채팅창」
- Git은 「복잡한 버전 관리 (Version Control)」가 아니라 「세이브 포인트 (Save Point)"
2026년, 브라우저 완결형 툴의 성숙으로 인해 환경 구축의 기술적인 벽은 거의 사라졌습니다. 남아있는 것은 심리적인 벽뿐입니다.
그 벽을 넘는 가장 좋은 방법은, **오늘 딱 하나만 툴을 열어보는 것**입니다. Lovable에 접속해서 무엇이든 좋으니 프롬프트 (Prompt)를 하나 입력해 보세요. 첫 번째 「동작하는 것」이 화면에 나타나는 순간, 이 글의 모든 말보다 더 웅변적으로 "벽은 낮다"라고 알려줄 것입니다.
### Discussion

AI 자동 생성 콘텐츠
본 콘텐츠는 Zenn AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기