node.js, 오류 : 'express'오류를 수 없습니다.
저는 Node.js를 처음 사용하며 첫 번째 웹 애플리케이션을 빌드하기 위해 express를 배우려고합니다. 첫 번째 샘플 코드에 갇혀서 실행하는 데 도움이 필요합니다. 이 질문을 게시하기 전에 스택 오버플로를 검색하고 전에 질문을 찾았지만 여전히 문제가 없습니다.
: 'express'오류를 수 없습니다.
내가 사용하고 10.8.2 OS 맥 . .js를 사용하여 Node.js를 설치했습니다 nvm.
node.js : 0.8.20 노드 경로 : /Users/feelexit/nvm/v0.8.20/bin/node 표현할 경로 : / Users / feelexit / nvm / node_modules / express
내 샘플 코드는 다음과 가변됩니다.
/Users/feelexit/WebstormProjects/learnnode/node_modules/index.js
var express = require('express');
var app = express();
app.get('/', function(req, res){
res.send('welcome to express');
});
app.listen(3000);
이 명령을 실행하려고 할 때 node index.js
다음과 같은 오류 메시지가 표시됩니다. 문제를 해결하도록 도와주세요.
감사합니다.
Error: Cannot find module 'express'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:362:17)
at require (module.js:378:17)
at Object.<anonymous> (/Users/feelexit/WebstormProjects/learnnode/node_modules/index.js:1:81)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.runMain (module.js:492:10)
feelexits-Mac:node_modules feelexit$
chovy의 질문에 대한 답변 업데이트 :
feelexits-Mac:~ feelexit$ npm install
npm ERR! install Couldn't read dependencies
npm ERR! Error: ENOENT, open '/Users/feelexit/package.json'
npm ERR! If you need help, you may report this log at:
npm ERR! <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR! <npm-@googlegroups.com>
npm ERR! System Darwin 12.2.0
npm ERR! command "/Users/feelexit/nvm/v0.8.20/bin/node" "/Users/feelexit/nvm/v0.8.20/bin/npm" "install"
npm ERR! cwd /Users/feelexit
npm ERR! node -v v0.8.20
npm ERR! npm -v 1.2.11
npm ERR! path /Users/feelexit/package.json
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /Users/feelexit/npm-debug.log
npm ERR! not ok code 0
그것은 말한다
Cannot find module 'express'
Express가 설치되어 있습니까? 주문한 경우 실행하십시오.
npm install express
그리고 프로그램을 다시 실행하십시오.
터미널에서 급행을 한 후
npm install
모든을 설치합니다.
그런 다음 노드 앱을 수행하여 서버를 사용할 수 있습니다.
express모듈 을 설치했는지 확인하십시오 . 주문한 경우 다음 명령을 사용하십시오.
npm install express
node_modules가 다른 위치 디렉토리에 있으면 NODE_PATHEnvironmental & 변수를 설정 하십시오.
set NODE_PATH=your\directory\to\node_modules;%NODE_PATH%
npm 설치-익스프레스 저장이 나를 위해 일했습니다 .Express.js 설치를 다시 실행하십시오.
앱 디렉토리 내에서 npm을 설치하면 필요한 모든 것을 설치하는 설치 문제가 해결됩니다.
여기에서 오래된 프로그램을 파헤 치지 만 동일한 오류가 발생하여 NodeApp이 상주하고 실행중인 디렉토리로 이동하여 해결했습니다. npm install -d
프로젝트와 다른 디렉토리에 익스프레스 모듈이 있습니다. require()로컬에서 시도하기 때문에 아마도 문제 일 것입니다 . 익스프레스 모듈을 / Users / feelexit / nvm / node_modules / express 에서 / Users / feelexit / WebstormProjects / learnnode / node_modules / express로 이동해보세요 . 이 정보 는 node_module 파일 구조에 대한 자세한 정보 를 제공 할 수 있습니다.
경로가 또는 ( 자세한 정보는 여기 )로 시작하지 않을 때 노드가 항상 (및 내부 폴더) 에서 모듈을 찾기 때문에 기본 파일이있는 /Users/feelexit/WebstormProjects/learnnode/node_modules/index.js경우 express를 찾아야합니다./Users/feelexit/WebstormProjects/learnnode/node_modules/node_modules./node_modules.//
모듈 폴더에 메인 파일을 놓친 것 같습니다.
이 시나리오의 경우 프로그램을 실행할 각 폴더에 대한 cmd 프롬프트를 사용하여 npm install express 명령을 실행하십시오. 예제 F : \ nodeSample에서 Express 모듈 프로그램 server.js를 실행하고 싶습니다. 특정 폴더에서 "npm install express"를 실행 한 다음 server.js를 실행하십시오.
Node_PATH 를 설정하지 않는 한 다른 유일한 옵션은 npm install express --save. Express가 이미 설치되어 있지만 node어떤 이유로 찾을 수 없습니다.
npm ERR! Error: ENOENT, open '/Users/feelexit/package.json'
이것은 npm이 작동하는 동안 권한이 없거나 연결되지 않은 파일로 인해 발생합니다.
즉 npm,이 사용자로 실행 하면 파일 (이 경우 package.json)에서 읽기 / 쓰기 권한이 충분하지 않습니다.
sudo전체 명령 전에 추가해보십시오 . 해결되어야합니다.
$ sudo npm install -g express
$ Password:*******
암호는 Mac의 관리자 암호입니다.
-g플래그는 노드의 전역 컨텍스트에이 모듈 (익스프레스)을 설치합니다. 즉, 노드는 express사용중인 모듈에 대한 전체 경로를 제공하지 않고도 모든 js 파일 내에서 모듈을 인식하거나 인식해야 합니다.
도움이 되었기를 바랍니다!!
나는 같은 문제가 있었다. 내 문제는 Express를 설치하기 전에 명령 줄에서 Node.js 프로젝트 디렉토리로 변경해야한다는 것입니다.
cd /Users/feelexit/WebstormProjects/learnnode/node_modules/
이것이 Colt Steele의 웹 개발 과정의 과정이라고 생각합니다. 왜 제가 그 오류로 끝났는지에 대한 동일한 답을 찾고있었습니다. Colt는 그렇게 말하지 않지만 node_module 폴더를 가져 와서 이동합니다. 작업중인 새 폴더에 ... 그게 저에게 효과적이었습니다.
npm install express body-parser cookie-parser multer --save이 문제를 해결하려면 소스 코드 nodejs 파일과 동일한 디렉토리에서 명령을 실행하십시오 . P / s : 더 많은 것을 이해하려면 명령 실행 후 디렉토리를 확인하십시오!
드물지만 npm 캐시가 손상 될 수 있습니다. 나를 위해 일한 것은 다음과 같습니다.
npm cache clean --force
일반적으로 패키지 관리자는 자체적으로 손상을 감지하고 다시 가져 오므로 일반적으로 필요하지 않습니다. 그러나 제 경우에는 Windows 10이 몇 번 충돌했으며 이것이 가져 오기 작업 중일 수 있다고 생각합니다. 누군가에게 도움이되기를 바랍니다!
추가 정보 : https://docs.npmjs.com/cli/cache
D:\learn\Node.js\node app.js
module.js:549
throw err;
^
Error: Cannot find module 'body-parser'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
때때로 버전이 package.json과 일치하지 않는 경우 package.json을 확인하여 문제를 해결 한 후 다음 명령을 사용하십시오. npm install body-parser@1.13.2 그것은 나를 위해 해결되었습니다.
비슷한 문제가 발생했고 결국 내 Heroku 서버를 엉망으로 만든 오래된 종속성 문제였습니다.
내 프로젝트 폴더에서 다음을 실행했습니다.
npm uninstall
npm install
도움이 되길 바랍니다
참고 URL : https://stackoverflow.com/questions/14949118/node-js-error-cannot-find-module-express
'IT' 카테고리의 다른 글
| 원 그리기 애니메이션 (0) | 2020.08.21 |
|---|---|
| CSS를 사용하여 멋진 화살표를 만드는 방법? (0) | 2020.08.21 |
| 배치 파일 내에서 출력 리디렉션 (0) | 2020.08.21 |
| CentOS에 Java SDK를 설치하는 방법은 무엇입니까? (0) | 2020.08.21 |
| Vim : 디렉토리의 파일에 설정 적용 (0) | 2020.08.21 |