Tools/crypto-wallet-core — 트러블슈팅
bug_reportBlockchain2026-04-25· 4분 읽기

crypto-wallet-core — 트러블슈팅

노드 연결 실패·빌드 오류·throttler·API key 문제 등 실제 운영에서 만난 이슈 해결 패턴.

list목차(9)

문제 해결 가이드

에러: Cannot find module 'dist/main'

에러 메시지

Error: Cannot find module '/Users/dnsever/johnny/crypto-wallet-core/apps/api/dist/main'

원인 분석

  1. 빌드가 실행되지 않음: dist/main.js 파일이 생성되지 않았습니다.
  2. 프로덕션 모드 실행: npm run start:prod를 실행했지만 빌드가 먼저 실행되지 않았습니다.
  3. 스크립트 경로 문제: start:prod 스크립트에 .js 확장자가 누락되었을 수 있습니다.

해결 방법

방법 1: 개발 모드로 실행 (권장)

개발 모드에서는 빌드 없이 TypeScript를 직접 실행합니다:

cd apps/api
npm run start:dev

장점:

  • 빌드 과정 없이 바로 실행
  • 파일 변경 시 자동 재시작 (hot reload)
  • 개발 중 가장 편리한 방법

방법 2: 빌드 후 프로덕션 모드 실행

프로덕션 모드로 실행하려면 먼저 빌드를 실행해야 합니다:

cd apps/api

# 1. 빌드 실행
npm run build

# 2. 프로덕션 모드 실행
npm run start:prod

참고: package.jsonstart:prod 스크립트가 node dist/main.js로 수정되었습니다.

방법 3: 의존성 설치 확인

의존성이 설치되지 않았다면 먼저 설치하세요:

# 루트 디렉토리에서
npm install

# 또는 apps/api 디렉토리에서
cd apps/api
npm install

추가 확인 사항

1. 빌드 출력 디렉토리 확인

빌드 후 dist 폴더가 생성되는지 확인:

cd apps/api
npm run build
ls -la dist/

dist/main.js 파일이 있어야 합니다.

2. TypeScript 컴파일 에러 확인

빌드 중 TypeScript 에러가 있는지 확인:

cd apps/api
npm run build

에러가 있다면 먼저 수정해야 합니다.

3. nest-cli.json 설정 확인

nest-cli.json의 설정이 올바른지 확인:

{
  "root": "apps/api",
  "sourceRoot": "apps/api/src",
  "compilerOptions": {
    "tsConfigPath": "apps/api/tsconfig.json"
  }
}

일반적인 실행 명령어

# 개발 모드 (권장)
npm run start:dev

# 디버그 모드
npm run start:debug

# 빌드
npm run build

# 프로덕션 모드 (빌드 후)
npm run start:prod

# 테스트
npm run test

# E2E 테스트
npm run test:e2e

예상되는 문제들

문제 1: 모듈을 찾을 수 없음

에러: Cannot find module '@crypto-wallet-core/core'

해결:

# 루트에서 워크스페이스 의존성 설치
npm install

# 또는 각 패키지 빌드
cd packages/core
npm run build

문제 2: TypeScript 경로 해석 실패

에러: Cannot find module (경로 별칭 관련)

해결: tsconfig.jsonpaths 설정 확인 및 tsconfig-paths 설치 확인

문제 3: 포트가 이미 사용 중

에러: EADDRINUSE: address already in use :::3000

해결:

# 다른 포트로 실행
PORT=3001 npm run start:dev

# 또는 사용 중인 프로세스 종료
lsof -ti:3000 | xargs kill -9

체크리스트

프로젝트를 처음 실행할 때:

  • 루트 디렉토리에서 npm install 실행
  • apps/api 디렉토리로 이동
  • npm run start:dev 실행
  • 브라우저에서 http://localhost:3000 접속 확인
  • /health 엔드포인트 테스트: curl http://localhost:3000/health

추가 도움말

문제가 계속되면:

  1. 로그 확인: 터미널의 전체 에러 메시지 확인
  2. 의존성 확인: package.json의 모든 의존성이 설치되었는지 확인
  3. Node.js 버전: Node.js 18+ 버전 사용 확인
  4. 캐시 클리어: node_modules 삭제 후 재설치
rm -rf node_modules
rm -rf apps/api/node_modules
npm install

More in Blockchain