728x90
npm 이 부분은 Node / React 에서 많이 사용한다. 이 부분에 대해서 관리하는 방법을 알면 굉장히 유용할 것이라 생각이 든다. 과연 어떻게 유용하게 사용할 수 있는걸까??

📌 NPM(Node Package Manager) 관리 방법
NPM(Node Package Manager)은 JavaScript 패키지를 관리하는 도구로, 프로젝트에서 라이브러리를 설치하거나 버전을 관리하는 데 사용됩니다.
🔹 1. NPM 기본 명령어
✅ NPM 초기화 (package.json 생성)
npm init
- 여러 설정을 입력해야 함
- 자동으로 기본값을 설정하려면:
npm init -y
- package.json 파일이 생성됨
✅ 패키지 설치
npm install 패키지명
npm i 패키지명
- 예시: axios 설치
npm install axios
- 설치된 패키지는 node_modules 폴더에 저장됨
- package.json에 "dependencies"로 기록됨
📌 개발용 패키지(devDependencies) 설치
npm install 패키지명 --save-dev
npm i 패키지명 -D
- 예시: eslint를 개발용 패키지로 설치
npm i eslint -D
- package.json의 "devDependencies"에 기록됨
- 실행 시에는 포함되지 않지만, 개발 환경에서만 필요할 때 사용
✅ 패키지 삭제
npm uninstall 패키지명
npm remove 패키지명
- 예시: axios 삭제
npm uninstall axios
🔹 2. 패키지 관리 (package.json & package-lock.json)
✅ package.json 파일
- 프로젝트에서 사용하는 패키지 정보, 스크립트, 버전 등을 관리하는 파일
- 주요 속성:
{
"name": "my-project",
"version": "1.0.0",
"dependencies": {
"axios": "^1.5.0"
},
"devDependencies": {
"eslint": "^8.0.0"
},
"scripts": {
"start": "node index.js",
"dev": "nodemon index.js"
}
}
- "dependencies": 실제 프로젝트에서 사용하는 패키지 목록
- "devDependencies": 개발할 때만 필요한 패키지 목록
- "scripts": 실행할 명령어 모음
✅ package-lock.json 파일
- 패키지 설치 시의 정확한 버전 정보를 저장
- 팀원들과 동일한 환경을 유지하려면 package-lock.json을 유지해야 함
- package.json과 다르게 세부적인 버전이 기록됨
- 삭제해도 npm install 하면 다시 생성됨
🔹 3. 패키지 버전 관리
✅ 버전 표기법
"axios": "^1.5.0"
- ^1.5.0: 1.x.x에서 1.5.0 이상 최신 버전 설치 가능 (2.0.0은 설치 안 됨)
- ~1.5.0: 1.5.x에서 최신 버전 설치 가능 (1.6.0은 설치 안 됨)
- 1.5.0: 정확히 1.5.0 버전만 설치됨
✅ 특정 버전 설치
npm install 패키지명@버전
- 예시: axios 1.4.0 버전 설치
npm install axios@1.4.0
✅ 최신 버전으로 업데이트
npm update
- package.json의 dependencies에 맞춰 최신 버전으로 업데이트
✅ 글로벌 패키지 설치
npm install -g 패키지명
- 전역적으로 사용 가능한 패키지를 설치
- 예시: nodemon 전역 설치
npm install -g nodemon
✅ 글로벌 패키지 목록 확인
npm list -g --depth=0
✅ 글로벌 패키지 삭제
npm uninstall -g 패키지명
🔹 4. NPM 실행 스크립트 (npm run)
✅ scripts 실행
- package.json의 scripts에서 설정한 명령어 실행 가능
"scripts": {
"start": "node index.js",
"dev": "nodemon index.js"
}
npm run start # node index.js 실행
npm run dev # nodemon index.js 실행
- start는 npm start로도 실행 가능 (run 생략 가능)
🔹 5. 캐시 관리 및 오류 해결
✅ 캐시 삭제 (오류 발생 시)
npm cache clean --force
✅ node_modules 및 package-lock.json 삭제 후 재설치
rm -rf node_modules package-lock.json
npm install
✅ 정리
명령어설명
npm init -y | 프로젝트 초기화 (package.json 생성) |
npm install 패키지명 | 패키지 설치 |
npm i 패키지명 -D | 개발용 패키지 설치 |
npm uninstall 패키지명 | 패키지 삭제 |
npm list | 설치된 패키지 확인 |
npm update | 패키지 최신 버전으로 업데이트 |
npm run 스크립트명 | package.json의 스크립트 실행 |
npm cache clean --force | NPM 캐시 삭제 |
npm install -g 패키지명 | 글로벌 패키지 설치 |
npm uninstall -g 패키지명 | 글로벌 패키지 삭제 |
📌 NPM을 잘 관리하면 프로젝트를 안정적으로 유지할 수 있어! 🚀
'개발 > Node.js' 카테고리의 다른 글
Node.js 파일 업로드 (0) | 2024.06.09 |
---|