node를 이용한 프로젝트를 진행하면서, 2개의 프로젝트를 실행할 때 각각 npm start와 npm run dev 명령어를 사용해야 했습니다.

처음에는 왜 이렇게 다른 명령어를 쓸 까 궁금해했는데, 알고 보니 별로 어려운 부분이 아니더라구요.

 

목차


    0. npm script 이해

    우리가 start, run dev와 같은 npm 명령어들을 사용하는데, 이 명령어들이 이유 없이 동작하는 것은 아니겠죠?

    이렇게 다양한 명령어를 사용해서 프로젝트를 동작시킬 수 있는 이유는 분명 어딘가에 그 명령어들이 등록이 되어있기 때문입니다.

     

     

    node를 이용하여 프로젝트를 진행하다보면 거의 반드시 생성해야 하는 파일이 있는데, 바로 package.json입니다.

    흔히 npm init -y를 통해 생성하는 그것이죠.

     

    이 곳에 아마 여러분들이 무의식적으로 따라서 만들었거나, 자동으로 생성된 start 명령어, 혹은 dev 명령어가 있을 것입니다. (당연히 dev가 아닌 다른 명령어도 있을 수 있어요!)

    각각 npm start, npm run dev로 실행할 수 있는 것이죠.

     

    start 명령어는 start 명령어 안에 실행할 수 있는 기본적인 서버 혹은 파일의 주소를 넣으면 그 주소를 실행하게 됩니다.

     

    그렇다면 run은 무슨 명령어일까요?

     

    runnpm에 기본적으로 설정된 start(시작), stop(정지), restart(재시작), test(테스트) 이외의 scripts를 실행하는 명령어입니다.

    dev는 기본으로 설정된 명령어가 아니기 떄문에 run을 이용해서 실행하는 것이죠!

     

    만약 scripts 내에 아무 명령어도 없다면? npm start 입력시 자동으로 node server.js가 실행됩니다.

     

    다양한 npm 명령어에 대해서는 아래 제로초님 블로그에 자세하게 나와있으니 참고하시면 도움이 되실 것이라고 생각합니다 :)

     

     

    (NodeJS) npm 명령어

    안녕하세요. 이번 시간에는 npm 명령어에 대해 알아보겠습니다. npm 명령어는 명령 프롬프트에 입력하는 명령어입니다. 지금까지 봤던 명령어는 npm init, npm start나 npm run, npm install 정도가 있겠네요

    www.zerocho.com

     


    1. 실제 예시

    1.0 npm start

    먼저 아래 사진은 express로 만든 프로젝트에서 nodemon을 이용해서 만든, 기본적으로 생성된 start 명령어입니다.

     

     

    위 명령어가 있기 때문에 npm start를 콘솔에 작성하면 nodemon을 이용해서 bin 폴더 안의 www 파일을 실행할 수 있는 것이죠!

     

     

    1.1. npm run dev

    이번에도 nodemon을 통해 자동화를 시켜줬지만, start가 아닌 dev 안에 nodemon을 넣었습니다.

     

     

    이 상황에서 npm start 명령어를 넣으면 start가 scripts에 없기 때문에 정상적으로 실행되지 않겠죠?

     

     

    npm run dev를 하면 정상적으로 nodemon이 실행됩니다!!

     

     


     

    반응형
    • 네이버 블로그 공유하기
    • 네이버 밴드에 공유하기
    • 페이스북 공유하기
    • 카카오스토리 공유하기