nodemon 명령이 노드 js 서버의 터미널에서 인식되지 않습니다.


89

https://scotch.io/tutorials/authenticate-a-node-js-api-with-json-web-tokens 에서 node.js 서버 설정을 수행하고 있습니다 . 나는 node.js에서 처음입니다. 을 (를) 설치하고 npm install nodemon --save있습니다. 하지만이 nodemon server.js.
터미널에서 :

nodemon은 내부 또는 외부 명령, 작동 가능한 프로그램 또는 배치 파일로 인식되지 않습니다.

여기에 이미지 설명 입력

node server.js명령이 작동하고 서버를 시작했지만 nodemon명령이 작동하지 않습니다.

https://scotch.io/tutorials/authenticate-a-node-js-api-with-json-web-tokens 에서 노드 js 서버를 설정했습니다. 비디오 .

왜 작동하지 않는지 모르겠습니다. nodemon 설치에 대한 몇 가지 명령을 시도했습니다.

npm install -g nodemon 
npm install -g nodemon --save 
npm install --save-dev nodemon 
npm install -g nodemon@debug 

npm install -g --force nodemon

나는 하나의 링크를 보았다 nodemon을 전역으로 설치할 수 없습니다. "nodemon"이 인식되지 않습니다. D 드라이브의 프로젝트 위치 때문에 경로를 설정하는 방법을 모르겠습니다.

나는 달리고 싶다 nodemon server.js. 누구든지 아이디어가 있으면 공유하십시오. 미리 감사드립니다.

답변:


222

전역 적으로 설치해야합니다.

npm install -g nodemon
# or if using yarn
yarn global add nodemon

그런 다음 경로에서 사용할 수 있습니다 (이제 시도했지만 작동하지 않았으므로 경로가 엉망이 될 수 있습니다)

전역 적으로 설치하는 대신 로컬로 설치된 버전을 사용하려는 경우 package.json에 스크립트를 만들 수 있습니다.

"scripts": {
    "serve": "nodemon server.js"
  },

그런 다음

npm run serve

원사를 사용하는 경우 선택적으로

# without adding serve in package.json
yarn run nodemon server.js
# with serve script in package.json
yarn run serve

npm은 전역 모듈에서 명령을 찾기 전에 로컬 node_modules 폴더를 찾습니다.


작동하지 않는 것은 무엇입니까? 로컬 설치를 사용하는 스크립트?
ndonohoe

Yaa. nodemon을 설치했습니다. package.json 파일에 스크립트를 넣었습니다. 그리고 실행 후 npm run serve. 결국 nodemon server.js를 실행하지만 작동하지 않습니다.
마틴

package.json : { "scripts": { "serve": "nodemon server.js"}, "name": "node-site", "version": "1.0.0", "description": "", " main ":"server.js ","scripts ": {"test ":"echo \ "Error : no test specified \"&& exit 1 "},"author ":" ","license ":"ISC ", "dependencies": { "express": "^ 4.14.0", "nodemon": "^ 1.11.0"}, "devDependencies": { "gulp-nodemon": "^ 2.2.1", "nodemon": "^ 1.11.0"}}
Martin

"작동하지 않음"을 명확히 할 수 있습니까? 오류가 있습니까? 아무 일도 일어나지 않습니까?
ndonohoe

거기에 두 세트의 스크립트가 있기 때문일 수 있습니다. 하나의 스크립트 객체에 모든 스크립트가 있어야합니다
ndonohoe

32
  1. 전역 적으로 nodemon을 설치합니다.

    C:\>npm install -g nodemon
    
  2. 접두사 가져 오기 :

    C:\>npm config get prefix
    

    콘솔에 다음과 같은 출력이 표시됩니다.

    C:\Users\Family\.node_modules_global
    

    복사하십시오.

  3. 경로 설정.
    고급 시스템 설정 → 환경 변수 → 새로 만들기 클릭 (사용자 변수 아래) → 팝업 양식이 표시됩니다. → 다음 값을 전달합니다.

    variable name = path,
    variable value = Copy output from your console
    
  4. 이제 Nodemon을 실행하십시오.

    C:\>nodemon .
    

작동합니다 !! 이것은 내가 찾고 있던 것이었다. 주셔서 감사합니다
yashjain12yj

이것은 나를 위해 일했습니다. 실제로 나는 창이 있고 환경 변수를 수정해야했습니다. 감사합니다 :)
Laveena

21

먼저 npm install --save nodemon을 작성한 다음 package.json에 다음을 작성하십시오.

"scripts": {
    "server": "nodemon server.js"
  },

다음 쓰기

npm run server

이것은 효과가 있었다! 감사합니다. 쿼리 일 뿐인 nodemon은 서버 파일을 다시 시작하지 못하도록 차단하지만 여전히 브라우저를 새로 고쳐야합니다. 각도 에서처럼 브라우저가 자체적으로 새로 고쳐질 수 있습니까?
Rahul Sharma

8

나는 같은 문제에 직면했다. 나는 dev-dependency로 nodemon을 설치했고 서버를 시작하려고 할 때 다음과 같은 메시지를 주었다.

nodemon은 내부 또는 외부 명령, 작동 가능한 프로그램 또는 배치 파일로 인식되지 않습니다.

그런 다음 전 세계적으로 설치하고 서버를 시작하려고 시도했지만 작동했습니다!

npm install -g nodemon

6

전 세계적으로 설치해야합니까? 그냥 실행할 수 있어야 nodemon server.js합니까? 그렇지 않은 경우 항상 로컬 프로젝트 디렉토리에서 호출 할 수 있습니다. 여기에 있어야합니다.

node_modules/.bin/nodemon

이것은 쉘 스크립트에서 내 nodejs api를 실행하는 데 도움이됩니다. 감사합니다!
Nam G VU

4

노드 접두사가 PATH ENV 변수에 없기 때문에 전역 적으로 설치된 모듈이 인식되지 않습니다. 이것을 시도하십시오. cmd 프롬프트 열기 npm config get prefix는 결과 경로를 PATH env 변수에 추가합니다. 이제 모든 위치에서 nodemon을 실행할 수 있습니다. 이 링크를 시도하고 따르십시오 .npm 권한 수정 https://docs.npmjs.com/getting-started/fixing-npm-permissions#option-2-change-npms-default-directory-to-another-directory


귀하의 링크에는 Linux에 대한 지침이 있습니다. Windows에 대한 것이 있습니까?
Jose Rojas

4

이 줄은 CMD에서 내 문제를 해결했습니다.

npm install --save-dev nodemon

3
글로벌 나를 위해 일을하지 않았다 설치를 nodemon하지만이 하나 : 한
codemirror

4

이것은 늦게 올 수 있지만 뭔가 말하는 것이 좋습니다. :)

nodemon globbaly를 설치하지 않으려면을 사용할 수 npx있으며 런타임에 패키지를 설치하고 전역 패키지로 작동합니다 (현재 사용 가능하며 전역 적으로 존재하지 않습니다!).

따라서 필요한 것은 npx nodemon server.js.

  • npxnpm@5.2.0버전 이상 에서 즉시 사용할 수 있습니다 .

3

nodemon을 사용하려면 전역 적으로 설치해야합니다.

Windows의 경우

npm i -g nodemon

Mac 용

sudo npm i -g nodemon

전역으로 설치하지 않으려면 command를 실행하여 프로젝트 폴더에 로컬로 설치할 수 있습니다 npm i nodemon . 로컬에서 실행하면 다음과 같은 오류가 발생합니다.

nodemon : 'nodemon'이라는 용어는 a의 이름으로 인식되지 않습니다.
cmdlet, 함수, 스크립트 파일 또는 작동 가능한 프로그램. 철자 확인
또는 경로가 포함 된 경우 경로가
정정하고 다시 시도하십시오.

이 오류를 제거하려면 package.json 파일을 열고

"scripts": {
     "server": "nodemon server.js"
 },

그 후에 명령을 실행하십시오.

npm 실행 서버

노드 몬이 제대로 작동하기 시작합니다.


1
잘못된. 스크립트에 { "server": "nodemon server.js"}가 표시되어야합니다.
joedotnot

3

nodemon을 전역으로 설치할 필요가 없습니다. 이 npx nodemon <scriptname.js>를 실행하십시오 . 그게 다야.


1

내 개발 컴퓨터에서 새 사용자 프로필을 만든 후 동일한 문제가 발생했습니다.

문제는 콘솔 (명령 프롬프트 \ powershell ISE)을 관리자로 실행하지 않았다는 것입니다.

관리자로 실행하면이 문제가 해결되었습니다.


1

나는 전 세계적으로 nodemon을 설치하려고 시도했지만 그것은 나를 위해 작동하지 않았습니다. 실행하려고 할 때마다 항상 오류가 표시됩니다.

nodemon : The term 'nodemon' is not recognized as the name of a
cmdlet, function, script file, or operable program. Check the spelling
of the name, or if a path was included, verify that the path is
correct and try again.

2. 이에 대한 두 가지 해결책을 찾았습니다.

솔루션 1 :

내가 시도한 것은 package.json 파일 의 "스크립트" 를 업데이트하는 것이며 거기에 추가했습니다.

"server": "nodemon app.js"

코드 줄 위와 그 이후

npm run server

솔루션 2 :

  1. Windows 키를 누릅니다.

  2. 검색 상자에 "경로"를 입력하고 "시스템 환경 변수 편집"을 선택합니다.

  3. 하단 근처의 "환경 변수"를 클릭합니다.

  4. "시스템 변수"섹션에서 "경로"변수를 두 번 클릭합니다.

  5. 오른쪽에있는 "새로 만들기"를 클릭합니다.

  6. 이를 복사하여 상자에 붙여 넣으십시오 ([사용자 이름] 대체).

C : \ Users [사용자 이름] \ AppData \ Roaming \ npm

  1. 터미널과 VSCode를 다시 시작하십시오.

  2. 그런 다음 입력 nodemon app.js하여 nodemon을 실행하십시오.

nodemon [filename.js]를 실행해야하므로 솔루션 2를 적용했습니다.


0

간단히 입력하여 노드 앱을 실행할 수 있습니다. nodemon 실행할 수 있습니다. 먼저 실행 index.js 해당 파일에 진입 점을 쉽게 넣을 수 있습니다.

nodemon을 설치하지 않은 경우 먼저 다음을 수행하여 설치해야합니다.

npm install -g nodemon

권한 오류가 발생하면

sudo npm install -g nodemon

nodemon이 존재하는지 여부를 확인할 수 있습니다.

nodemon -v

0

다음 명령을 실행하십시오.

npm install nodemon -g

이제 nodemon을 설치하지만 내 경우 문제는 다른 곳에 nodemon을 설치한다는 것입니다. (ProgramFiles (x86))에서 Nodejs 경로를 추가했지만 작동하지 않아 다른 솔루션을 찾았습니다.

  • 위 명령 실행
  • 설치시 nodemon이 설치된 경로가 표시됩니다. [경로를 보려면 아래 링크로 이동] [1]

    [1] : https://i.stack.imgur.com/ld2sU.png

  • npm까지 경로를 복사하고 환경 변수로 설정하십시오.
  • 이제 아래 명령을 시도하십시오.

      nodemon YourAppName.js

0

위의 모든 옵션이 실패했으며 이에 대한 영구적 인 해결책이 있습니다. 에 선 아래 추가 package.json 종속성과 아래 run npm install. 이에 nodemon 패키지를 추가합니다 node_modules 당신은 코딩을 즐길 수 있습니다 이동합니다.

"nodemon": "^1.17.*"

3
Stack Overflow에 오신 것을 환영합니다. 기존 답변으로 이전 질문에 답변 할 때 답변이 제공하는 새로운 정보를 설명하는 것이 유용합니다. 이 답변은 전역 설치를 표시하지 않는 것으로 보이며 특정 버전을 참조 (따라서 오래되지 않음)하며 활성화 방법을 보여주지 않는다는 질문에 대답하지 않습니다. 명령.
Jason Aller

0

전역 적으로 설치

 npm install -g  nodemon

Windows 10에서 저에게 효과적이었습니다.

nodemon app.js

0

Set-ExecutionPolicy cmdlet의 기본 실행 정책은 Restricted for Windows입니다. 이 정책을 Unrestricted로 설정하여 nodemon 설치를 시도 할 수 있습니다.

명령을 실행 Set-ExecutionPolicy Unrestricted 하고 nodemon을 설치하고 명령을 실행하십시오.nodemon -v


0

이런 식으로 수정했습니다

  1. 기존 로컬 nodemon 제거

    npm 제거 nodemon

  2. 전 세계적으로 다시 설치하십시오.

    npm i -g nodemon


-2

dev 종속성이므로 nodemon을 제거하고 대신 node를 사용하십시오.

"scripts": {
     "start": "node server.js"
 },

이것은 나를 위해 일했습니다.


질문에 대답하지 않습니다. node와 nodemon은 용도가 다릅니다.
joedotnot

그것은 다른 것입니다. "app.js nodemon"는 "서버"해야 nodemon를 들어
하기 Shubham 쿠마
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.