>  기사  >  웹 프론트엔드  >  nodejs 전역 설치 모듈을 읽을 수 없습니다

nodejs 전역 설치 모듈을 읽을 수 없습니다

王林
王林원래의
2023-05-23 22:49:06723검색

머리말

Node.js가 웹 개발에 널리 적용되면서 많은 사람들이 Node.js를 자신의 개발 기반으로 사용하기 시작했습니다. 그러나 일부 초보자는 전역적으로 설치된 모듈을 설치하고 사용할 때 몇 가지 문제에 직면할 수 있습니다. 이 기사에서는 Node.js를 사용할 때 전역적으로 설치된 모듈을 읽을 수 없는 몇 가지 문제를 해결합니다.

문제 설명

Node.js를 사용할 때 npm을 통해 nodemon, express 등 일부 모듈을 전역적으로 설치하는 경우가 있습니다. 그러나 명령줄을 열고 명령줄을 통해 이러한 모듈을 사용하려고 하면 아래와 같이 몇 가지 문제가 발생할 수 있습니다.

nodemon : 在此系统上禁止执行脚本。有关详细信息,请参阅 https://go.microsoft.com/fwlink/?LinkID=135170 中的运行 Policy。
所在位置 行:1 字符: 1
+ nodemon
+ ~~~~~~~
    + CategoryInfo          : SecurityError: (:) [], PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess

또는

'express' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

이 상황은 우리가 설치한 모듈을 명령줄에서 읽을 수 없음을 의미합니다. ,왜 이런거야?

원인 분석

이 상황은 일반적으로 환경 변수의 잘못된 구성으로 인해 발생합니다. Node.js가 관련 설치 파일을 찾을 수 없기 때문에 전역적으로 설치된 모듈을 명령줄에서 읽을 수 없습니다.

Node.js가 npm을 사용하여 모듈을 설치하면 설치된 모듈은 기본적으로 전역 경로가 아닌 로컬 폴더에 저장됩니다. 명령줄에서 모듈을 실행하면 Node.js는 모듈을 저장할 경로를 찾습니다. 해당 경로가 Node.js의 PATH 환경 변수에 없으면 읽기 오류가 발생합니다.

Solution

이 문제를 해결하려면 다음 단계를 수행해야 합니다.

  1. Node.js의 전역 모듈 경로를 확인

먼저 Node.js 전역 모듈의 경로를 찾아야 합니다. 다음 코드를 사용하여 명령줄에서 볼 수 있습니다.

npm root -g

이 명령은 Node.js 전역 모듈의 경로를 반환합니다. 예:

C:UsersUsernameAppDataRoaming
pm
ode_modules
  1. Node.js 전역 모듈 경로를 환경 변수에 추가

컴퓨터 열기 제어판에서 아래 그림과 같이 "환경 변수" 옵션을 찾아 엽니다.

nodejs 전역 설치 모듈을 읽을 수 없습니다

"환경 변수" 창에서 "시스템 변수" 아래의 "경로" 옵션을 찾습니다. "를 선택하고 "편집" 버튼을 클릭하세요. 환경 변수 편집 창에서 새로 만들기 버튼을 클릭하고 Node.js 전역 모듈 경로를 옵션에 복사하여 붙여넣습니다.

C:UsersUsernameAppDataRoaming
pm
ode_modules
  1. 명령줄 다시 시작

환경 변수를 추가한 후 닫고 다시 시작 명령줄 열기 , 또는 열린 명령줄에서 다음 명령을 실행하여 환경 변수를 업데이트합니다.

refreshenv

이제 전역적으로 모듈을 다시 설치해 볼 수 있습니다. 예를 들어 다음 코드를 실행하여 nodemon을 시작합니다:

nodemon

또는 Express 애플리케이션을 시작합니다:

express myapp

Conclusion

이 기사는 Node.js를 사용할 때 전역적으로 설치된 모듈을 읽을 수 없는 문제를 해결합니다. Node.js로 개발하는 경우 유사한 문제를 해결하려면 위의 단계를 따르는 것이 좋습니다. 질문이 있거나 도움이 필요하시면 댓글란에 메시지를 남겨주세요.

위 내용은 nodejs 전역 설치 모듈을 읽을 수 없습니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.