본문으로 바로가기

npm 개념과 사용법

category node.js 2018. 7. 16. 15:00
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.


npm 개념과 사용법

npm(Node Package Manager)은 Node의 모들을 관리해주는 패키지 매니저입니다. 생활코딩의 이고잉님의 말을 빌리자면 Node계의 앱스토어 라고 할수 있습니다. 또한 프로그램을 개발하는데 있어 다양한 모듈을 가져와 사용하고 있습니다. node.js에서는 다양한 모듈을 사용하고 관리하기 위해 NPM을 사용하고 있습니다. Java에서는 MAVEN의 개념이라고 생각하면 되겠습니다.


npm 설치 방법

npm은 과거에 별도로 설치했어야 하지만 node.js를 설치하신다면 자동으로 npm이 설치가 됩니다. npm 설치 확인을 위해 npm -v 를 커맨드 또는 터미널에 입력하면 현재 설치된 npm의 버전을 확인할 수 있습니다.


https://www.npmjs.com/ 




npm -v

npm의 버전을 확인할 수 있습니다.




npm -h

npm에 사용되고 있는 명령어들의 설명을 볼 수 있습니다. 근데 영어라는건 함정.




npm install

npm install 은 아시다시피 모듈을 설치하는 명령어 입니다. npm install 모듈명@버전 으로 명령어를 입력하면 특정 버전을 설치할 수 있고, npm install  주소를 입력하면 저장소에 있는 패키지를 설치할 수 있습니다. 아래는 uglify 라는 패키지를 설치한 것을 예제로 적어보았습니다.



1
2
3
npm install <모듈명>
 
npm install uglify-js





npm install <package> -g

-g 옵션은 Global의 약자로서 직역하자면 글로벌 하게 모듈을 추가하겠다라는 의미가 됩니다. -g를 이용해서 추가하면 이 프로젝트뿐만 아니라 다른 프로젝트에서도 해당 모듈을 사용할 수 있습니다. 글로벌 설치 과정에서는 시스템 디렉토리에 설치가 되므로 리눅스 환경에서는 sudo 명령어로 실행해야 하고, 윈도우에서는 관리자 권한이 필요합니다.


1
2
3
npm install <모듈명> -g
 
npm install uglify-js -g





npm init

package.json을 만드는 명령어 입니다. 새로운 프로젝트나 패키지를 만들 때 사용합니다. node.js 프로젝트의 기본적인 정보와 의존성 모듈의 정보를 담고 있습니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
C:\Users\z\Desktop\npmtest>npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.
 
See `npm help json` for definitive documentation on these fields
and exactly what they do.
 
Use `npm install <pkg>` afterwards to install a package and
save it as a dependency in the package.json file.
 
Press ^C at any time to quit.
package name: (npmtest) npmtest
version: (1.0.0)
description: this is npmtest
entry point: (index.js)
test command:
git repository:
keywords:
author: ktko
license: (ISC)
About to write to C:\Users\z\Desktop\npmtest\package.json:
 
{
  "name": "npmtest",
  "version": "1.0.0",
  "description": "this is npmtest",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "ktko",
  "license": "ISC"
}
 
 
Is this ok? (yes)
 



package.json은 현재 프로젝트에서 사용하는 모듈들과 버전을 하나의 json파일 안에 저장하여 관리를 하게 해줍니다. 만약 package.json이 없다면 다른 사람들과 개발을 공유할 때 모듈을 전부 저장 또는 업데이트해야 하겠지만 package.json 안에 정보가 있다면 이 파일을 통해 각자 install 할 수 있어 쉽게 개발을 진행할 수 있습니다.



npm install <모듈명> --save

입력한 모듈명을 설치하고, 현재 경로에 package.json이 존재하는 경우에 dependencies 객체에 해당 모듈을 추가합니다.






npm update <모듈명>

설치한 모듈을 업데이트 합니다.




npm remove <모듈명>

remove의 의미는 제거하다니 모듈을제거한다는 의미 입니다.




npm list <모듈명>

설치된 모듈의 버전이 궁금하시면 list 명령어를 사용하시면 됩니다.




npm ls 

현재 설치된 모듈들을 보고 싶으면 ls를 사용하면 됩니다. 너무 Depth가 깊어 화면에 들어오지 않는다면 depth 파라미터를 옵션으로 줘서 조절할 수 있습니다.


npm ls --depth=0




npm을 공부하면서..

npm 명령어를 공부하면서 npm의 명령어는 수도없이 많다는 것을 알게 되었고, npm start, npm run 등등 중요한 명령어들을 적고 싶지만 포스팅 하나에 작성하는게 가능할까라는 생각이 듭니다. 고로 저는 node.js를 포스팅하면서 유용한 것들에 대해서는 추가하여 작성하는 걸로 .. 하겠습니다.






'node.js' 카테고리의 다른 글

node.js node.js를 왜 익혀야 할까?  (0) 2018.07.04