programing

Nodejs가 Windows에 설치된 모듈을 찾을 수 없습니다.

newstyles 2023. 4. 19. 22:33

Nodejs가 Windows에 설치된 모듈을 찾을 수 없습니다.

현재 Windows에서 nodej를 배우고 있습니다.npm.cmd를 사용하여 여러 모듈이 글로벌하게 설치되어 nodejs가 설치된 모듈을 찾지 못했습니다.옥을 예로 들어보자.

npm install jade -g

는 Jade 디렉토리에 되어 있습니다."C:\Program Files (x86)\nodejs\node_modules" 다음 는 '아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아"Cannot find module 'jade'" 오류, 오류,

var jade = require('jade');

단, 옥이 로컬에 설치되어 있는 경우(npm의 -g 옵션 없음)에는 코드가 정상적으로 실행됩니다.로컬로 설치된 모듈을 사용하고 싶지 않습니다. 디스크 공간이 낭비됩니다.글로벌하게 설치된 모듈을 Windows에서 작동시키려면 어떻게 해야 합니까?

.NODE_PATH로 설정합니다.%USERPROFILE%\Application Data\npm\node_modules(Windows XP),%AppData%\npm\node_modules(Windows 7/8/10), 「npm」Windows.의 [합니다([]대화상자의 [Advanced]탭에서 [System Variable]를 실행합니다).control.exe sysdm.cpl,System,3를 참조해 주세요.

Windows 7+ 에서의 퀵솔루션은 다음과 같습니다.

rem for future
setx NODE_PATH %AppData%\npm\node_modules
rem for current session
set NODE_PATH=%AppData%\npm\node_modules

가 있다NODE_PATH수입하다.PATH단, 、 、 、 , , ,가 없는 경우node_modules를 들어 part(부분))%AppData%\npmWindows 7/8/10).


옛날이야기

저는 node.js를 거의 처음 접하기 때문에 완전히 맞는 것은 아니지만 제 경험상으로는 다음과 같습니다.

  1. g는 글로벌라이브러리를 설치하는 방법이 아닙니다.시스템 패스에 배치하는 방법일 뿐입니다.커맨드 라인에서 글로벌라이브러리의 풀 패스를 작성하지 않고 호출할 수 있습니다.예를 들어 노드 앱이 로컬 파일을 덜 변환하는 등 유용합니다. 글로벌하게 설치하면 모든 디렉토리에서 사용할 수 있습니다.
  2. node.dir 자체는 npm 글로벌 dir를 조사하지 않았습니다.필요한 파일을 찾기 위해 다른 알고리즘을 사용하고 있습니다.http://nodejs.org/api/modules.html#modules_file_modules (경로 내의 모든 폴더를 스캔하여 node_dir 폴더에 대해 현재부터 시작하여 체크합니다.

자세한 내용은 유사한 질문을 참조하십시오.npm을 사용하여 모듈을 글로벌하게 설치하려면 어떻게 해야 하나요?

좀비를 깨울 수 있다는 것은 알지만 그래도 문제가 있다고 생각합니다.Windows 7의 노드 모듈에 대한 글로벌 액세스가 필요한 경우 글로벌 변수 경로에 다음 사항을 추가해야 합니다.

C:\Users\{USER}\AppData\Roaming\npm

" "를 제외한 이만: " " "node_modules30일

Windows 7 의 NODE_PATH 에 액세스 할 수 있습니다.%AppData%\npm\node_modules

폴더를 했습니다.%USERPROFILE%\AppData\Roaming\npm PATH path PATH my 。 있다\node_modules덧붙입니다.%USERPROFILE%\AppData\Roaming\npm\node_modules\효과가 없었습니다.

이 노드의 블로그 게시물을 인용하겠습니다.

일반적으로 경험의 법칙은 다음과 같습니다.

  • require('what')를 사용하여 프로그램에서 사용할 무언가를 설치하는 경우 프로젝트의 루트에 로컬로 설치합니다.
  • 셸이나 명령줄 등에 사용하는 것을 인스톨 하는 경우는, 글로벌하게 인스톨 해 바이너리가 PATH 환경변수에 들어가도록 합니다.

...

물론 둘 다 하고 싶은 경우도 있습니다.Coffee-script와 Express는 모두 명령줄 인터페이스와 라이브러리를 갖춘 앱의 좋은 예입니다.이 경우 다음 중 하나를 수행할 수 있습니다.

  1. 양쪽 모두에 설치합니다.정말 디스크 공간이 그렇게 부족해요?괜찮아, 정말.작은 JavaScript 프로그램입니다.
  2. 글로벌하게 설치한 후 npm link coffee-script 또는 npm link express(심볼릭 링크를 지원하는 플랫폼인 경우)를 설치합니다.그런 다음 글로벌 복사본만 업데이트하면 모든 심볼 링크도 업데이트됩니다.

, 「 」를 합니다.npm link jade을 사용하다

환경변수를 추가/편집하여 다음과 같은 결론을 내렸습니다.

  1. "/" User variables가 (상자에 대하여)System variables(하부의)를 선택합니다.그렇지 않으면, 「관리자로서 실행」하고, 동작시킬 필요가 있습니다.
  2. ★★;%AppData%\npm로로 합니다.Path툴로서 (지원되고 있는 ),jshint ★★★★★★★★★★★★★★★★★」grunt-cli를 참조해 주세요.
  3. NODE_PATH을 설정하다%AppData%\npm\node_modules require('<pkg_name>')프로젝트 디렉토리에 인스톨 되어 있지 않은 스크립트로 작성됩니다.(단, OS 를 사용하고 있는 경우는, 이 요건을 추천합니다.mklink(Vista 후등등)

테스트 환경:

  • Windows 7(엔트, 64비트, SP1), Node.js 4.2.4, npm 2.14.12
  • Windows 8.1 (64비트), Node.js 0.10.30, npm 1.4.21

글로벌 모듈을 작동시키는 데 큰 어려움을 겪었습니다. 저는 으로 '아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아.C:\Users\yourusername\AppData\Roaming\npm[ System Variables ] [ [ PATH ]으로 설정합니다.「nodejs」노드.

Windows 10을 실행하고 있습니다.

Windows 7에서 이 문제가 발생했습니다.

npm install -g gulp

일반 사용자로 로그온하고 있는 동안 관리자로 로그온합니다.

솔루션:일반 사용자와 동일한 설치(cmd에 대해 "admin으로 실행"되지 않음)를 실행하는 경우 모두 정상입니다.기본 설치 및 검색 경로와 관련이 있을 수 있습니다.

제가 win8.1 npm을 사용한 경험으로 볼 때C:\Users\[UserName]\AppData\Roaming\npm\node_modules하지만 덤플리 검색은C:\Users\[UserName]\node_modules.

풀 패스로 어플리케이션 내 심플한 솔루션 레퍼런스 모듈 1개:

var jsonminify = require("C:/Users/Saulius/AppData/Roaming/npm/node_modules/jsonminify");

윈도의 경우 모두 nodej 및 npm 모듈의 환경변수를 설정해야 한다고 했는데, 그 이유를 알고 계십니까?일부 모듈에는 명령줄 도구가 있습니다.모듈 설치 후 C:\Program Files\nodejs[module.cmd]파일이 있습니다.이 파일은 window 명령어 실행에 사용됩니다.따라서 cmd 파일이 포함된 경로를 환경 변수 %PATH%에 추가하지 않으면 명령 창을 통해 정상적으로 실행되지 않습니다.

Windows 10에서 작업한 경우npm config set prefix %AppData%\npm\node_modules

같은 문제가 있었습니다.바우어를 설치하려고 했는데npm install -g bower

노드가 제가 아닌 다른 사용자에 의해 설치되었기 때문인 것 같습니다.

노드를 제거하고 다시 설치했습니다.설치 중에 [Add to PATH]> [ npm modules ]옵션에 대해 다음 텍스트를 보았습니다.

노드 설치 메시지

여기에 이미지 설명 입력

노드 설치 후 실행했습니다.npm install -g bower또 시작이군 이제 바우어가 먹히네

물론 저처럼 사용자 자신의 노드를 재설치할 필요는 없습니다.솔루션은 다른 사용자가 설명한 바와 같이 NODE_PATH 또는 PATH 변수를 사용해야 합니다.

이는 노드가 다른 사용자에 의해 설치되어 있는 경우(또는 설치 중에 [Add to PATH]> [ npm modules ]옵션이 표시되어 있지 않은 경우)에만 이 문제가 발생함을 나타냅니다.

또는 에 추가할 수도 있습니다.~/.npmrc오른쪽 프리픽스나는 가지고 있다C:\Program Files\nodejs64 Win7 용.

Windows 10을 탑재한 새 컴퓨터에서 node.js with visual studio 2015를 사용하고 싶어서 이 질문을 하게 되었습니다.Windows 7과 8 및 8.1 모듈을 찾는 데 문제가 없는 node.js를 사용했습니다.시리얼 모듈과 RFXCOM 모듈 때문에 이 버전을 사용해야 하기 때문에 레거시 node.js 0.10.39를 사용합니다.

Windows 10 에서는, 환경 변수내의 NODE_PATH 를 C 로 설정합니다.\Users\User\node_modules.

는 나나 to to to to에 을 추가해야 .Path에 따라 변동하다.System variables의 설정.User variable효과가 없었습니다.는 윈도우11.하고 있습니다.

%USERPROFILE%\AppData\Roaming\npm

Windows 10에서는 gulp을 폴더에 로컬로 설치해야 했습니다.

C:\Users\myaccount\AppData\로밍\npm\node_modules

npm install gulp

이로 인해 "gulp가 인식되지 않습니다"라는 문제가 해결되었습니다.

여기서 노드를 다운로드하여 재설치하기만 하면 모든 경로 문제가 해결됩니다.

명령 프롬프트 또는 단말기를 재시작하는 것을 잊지 마십시오.

위의 답변은 모두 저에게 효과가 없었습니다.마지막으로 동작한 것은 환경 경로 변수에 %AppData%\npm을 추가하고 C:\Program Files\nodejs의 2개의 ng 파일을 삭제하는 것뿐입니다.

ng 패키지는 C:\Program Files\nodejs\node_modules에 설치되어 있지 않기 때문에 nodejs 디렉토리의 ng 바이너리를 사용하는 것은 기능하지 않는 것이 분명합니다.

C: 에서 PATH 환경변수 - .npmrc 를 이미 설정했기 때문에 이 디렉토리에서 검색한 이유를 알 수 없습니다.\Users\MyUser - 시스템 변수 및/또는 NODE_PATH를 추가하려고 했습니다.

Windows 를 사용하고 있는 경우는, 몇개의 스텝이 필요합니다.1 ) package 라고 하는 파일을 작성합니다.json

 {
  "name": "hello"
, "version": "0.0.1"
, "dependencies": {
    "express": "*"
  }
}

여기서 hello는 패키지의 이름이고 *는 의존 관계의 최신 버전을 나타냅니다.

2) 프로젝트 디렉토리에 코드를 입력하고 다음 명령을 실행합니다.

npm 설치

종속성을 설치합니다.

언급URL : https://stackoverflow.com/questions/9587665/nodejs-cannot-find-installed-module-on-windows