"내부/modules/cj/loader.js:582 throw err"
에서 합니다 Error : Cannot find module
.
여기 전체 오류가 있습니다.어떻게 해야 하나?
internal/modules/cjs/loader.js:582
throw err;
^
Error: Cannot find module 'C:\Users\User\Desktop\NodeJsProject\app.js'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:580:15)
at Function.Module._load (internal/modules/cjs/loader.js:506:25)
at Function.Module.runMain (internal/modules/cjs/loader.js:741:12)
at startup (internal/bootstrap/node.js:285:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:739:3)
모든 경우 => Windows, Linux, Mac
- 합니다를 합니다.
node_modules
- 합니다를 합니다.
package-lock.json
을 대다 - 실행.
npm install
- 실행.
npm start
리눅스용
rm -rf node_modules package-lock.json && npm install && npm start
처음에 노드 js를 시도했을 때도 같은 문제가 있었습니다.
다른 디렉토리에 동일한 이름을 가진 .js 파일이 있고 같은 메인 디렉토리에 있었기 때문에 이러한 문제가 발생하고 있음을 알게 되었습니다.
메인 프로젝트 폴더 외부에 다른 디렉터리를 만들었고, .js 파일을 만들었습니다.
그 뒤로는 잘 나갔습니다.
app.js
다음 명령을 시도합니다.
한다를 node_modules
그리고.package-lock.json
rm -rf node_modules package-lock.json
그런 다음 다음 명령을 실행하여 종속성을 설치합니다.
npm install
마지막으로 다음 명령으로 패키지를 실행합니다.
npm start
이 된 은 을 이었습니다..js
Code에서 ) 연 다음 을 VS Code고(VS Code해) VS Code합니다를 합니다.node <filename>.js
(또는 제 경우에는)node index.js
).
는 이미 했습니다.node
내 시스템에서, 하지만 어떤 이유에서건, 나는 당신이 언급한 파일의 직접 경로를 입력했을 때에도 여전히 오류가 발생하고 있었습니다.node /desktop/index.js
.
내 새를 에 것입니다..js
해당 을 만들고 Code 를 연 하고 VS Code합니다를 합니다.node index.js
터미널에서 내 문제를 해결했습니다.
파일 이름 끝에 공백(참조가 아닌 실제 파일 이름)이 있었기 때문에 동일한 오류가 발생했습니다.app.js'를 'app.js'로 변경하면 잘 작동했습니다.
께는.TypeScript
, 에 의해 야기됩니다.incremental
compilerOptions
당신의 설정에 대해.
이것이 구축의 원인이 됩니다.tsconfig.tsbuildinfo
캐시를 위해 모든 데이터를 저장하는 파일.만약 당신이 그 파일을 제거하고 프로젝트를 다시 컴파일한다면 그것은 바로 작동될 것입니다.
1. 오류 메시지를 읽습니다!
오류 메시지를 읽습니다.두 번째 부분의 첫 번째 줄은 다음과 같이 말합니다.
Error: Cannot find module 'C:\Users\User\Desktop\NodeJsProject\app.js'
그래서 가장 먼저 확인해야 할 것은 파일이 존재하는가 하는 것입니다.
Windows에서 명령 프롬프트(+)WinKeyr를 열고 입력합니다.cmd
, 누름).실행:
dir C:\Users\User\Desktop\NodeJsProject\app.js
응답이 다음과 같은 경우 – 시스템이 지정한 경로를 찾을 수 없습니다.– 또는 – 파일을 찾을 수 없음 – 파일이 존재하지 않음을 알 수 있습니다.
마찬가지로 Linux/Unix(윈도우즈의 경우 MSYS2)에서 실행합니다.
$ ls "C:\Users\User\Desktop\NodeJsProject\app.js"
ls: cannot access 'C:\Users\User\Desktop\NodeJsProject\app.js': No such file or directory
따라서 리눅스에서 No such file or directory가 발생하면 해당 파일이 존재하지 않음을 알 수 있습니다.
2. 해보세요.npm install
1 에서를 .npm install
,그리고나서npm start
.
3. 마지막 수단: 이 답변을 사용해 보십시오.
위의 어떤 것도 당신의 문제를 해결하지 못했다면, 저의 마지막 조언은 다음과 같습니다.
- 합니다를 합니다.
node_modules
리, - 합니다를 합니다.
package-lock.json
일, - 를
npm install
, - 를
npm start
.
4. VS Code에서 에러가 발생하는 경우
참고:
Visual Studio Code에서 디버깅할 때 뚜렷한 이유 없이 오류가 발생할 수 있습니다.
VS Code에서 오류가 발생하면 이 답변이 도움이 되는지 확인합니다.
5. 오류를 재현하는 방법
컴퓨터에 Node.js를 이미 설치한 것 같습니다.
그렇지 않은 경우 다운로드하여 설치합니다.
오류 메시지는 재현하기 쉽습니다.Node.js를 설치한 후 명령줄을 열고 다음을 실행합니다.
$ node thisFileDoesNotExist.js
node:internal/modules/cjs/loader:1078
throw err;
^
Error: Cannot find module 'C:\thisFileDoesNotExist.js'
[90m at Module._resolveFilename (node:internal/modules/cjs/loader:1075:15)[39m
[90m at Module._load (node:internal/modules/cjs/loader:920:27)[39m
[90m at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)[39m
[90m at node:internal/main/run_main_module:23:47[39m {
code: [32m'MODULE_NOT_FOUND'[39m,
requireStack: []
}
Node.js v18.14.2
6.node <someFile.js>
한 치의
터미널에서 오류 없이 Node.js를 실행하려면 Windows 명령줄에서 다음을 실행합니다.
echo console.log('\nHello world!')> hello.js
node hello.js
Linux 터미널에서 다음을 시도해 봅니다.
echo "console.log('\nHello world\!\n')"> hello.js
node hello.js
두 경우 모두 다음과 같은 반응이 나타날 것으로 예상합니다.
Hello world!
하면.hello.js
, 그 다음에 달려요.node hello.js
한번 .
참고문헌
- MSYS2 | 다운로드 페이지
- 오류 해결을 위한 가장 과감한 해결책
- 비주얼 스튜디오 코드 | 다운로드 페이지
- VS Code에서 오류가 발생할 경우 어떻게 해야 하는지 답변
- 최소, 재현 가능한 예제를 만드는 방법
- Node.js | 다운로드 페이지
에서의 파일 package.json
({"npm": <your server code file name>.js}
중인 파일((합니다))이 있어야 합니다.app.js
,main.js
,start.js
,server.js
에)를할 수도 있습니다
특정 .js 파일은 응용 프로그램의 하위 폴더(/src)에 있었고 터미널은 일반 앱 폴더에 있었습니다.(모든 패키지 파일, modules, 공용 폴더, src 폴더가 포함되어 있음) 오류를 던지고 있었습니다.애플리케이션으로 이동(/src)하여 문제가 해결되었습니다.
도커를 통과하는 어떤 악마도 없는 비슷한 문제에 부딪혔지만,
패키지에 들어있는 "메인" 파일을 확인할 가치가 있습니다.json이 올바른 진입 지점을 가리키도록 구성되어 있습니다.
꾸러미로json
"main": "server.js",
"scripts": {
"start":"nodemon src/server.js",
"docker:build": "docker build -f ./docker/Dockerfile . "
},
합니다의 올바른 .app.js
할 때node <path>/app.js
가 없어요
Error: Cannot find module 'C:\Users\User\Desktop\NodeJsProject\app.js'
올바른 디렉토리에서 terminal 명령을 실행하지 않을 수 있습니다.
예를 들어 새 폴더를 만든 경우 폴더로 이동한 다음 명령을 실행합니다.
아래 명령을 사용할 때 저도 같은 오류가 발생했습니다.
node .function-hello.js
명령을 아래 명령으로 변경했는데 잘 작동했습니다.
node .\function-hello.js
실행하려는 js 파일의 경로가 잘못되었습니다. 노드가 있는 루트에 상대적으로 실행할 경로와 파일 이름을 입력해야 하지만 입력한 내용이 있는 위치가 아닙니다.
타이핑을 했습니다.node redux-basics.js
, 약간 오해의 소지가 있는 오류 메시지인 Stack Overflow'가 내 파일 시스템을 보고 입력했어야 했습니다.node src/redux-basics.js
.
어젯밤에 이상한 일이 생겼습니다.나는 명령을 내렸어요.node run watch
npm run watch
걸 다 안 저는 이 실에 모든 것을 다 해보았지만, 저는 아무것도 되지 않았습니다.나는 좌절했지만 결국 내가 명령을 잘못 실행한 것을 알게 되었습니다.저는 크게 웃고 있었습니다.가끔 이런 일들이 있었습니다.그래도 Nodejs를 배우는 것은 즐겁습니다.
저는 명령 프롬프트에서 다시 "npm install"이 작동했습니다.명령 프롬프트는 "관리자로 실행"이어야 합니다.
public이나 src 같은 하위 폴더가 아닌 메인 디렉토리 안에 .js 파일을 만듭니다.
"nodeNodeJsProject/app.js"를 입력하기만 하면 됩니다.
프로그램이 실행됩니다 :)
포장지로 가세요.json 파일을 작성하고 이 행을 확인합니다.
"main": "main.js
괄호 안에 제공된 파일은 실행하려는 파일과 정확히 일치해야 합니다.
node main.js
이것으로 나의 문제가 해결되었습니다.
nestjs로 타이프스크립트 작업을 할 때도 같은 문제가 있습니다.VS Code에서 디버깅을 처음으로 실행하려고 시도한 후 어떤 이유로든 (launch.json과 함께 - 그건 그렇고 작동하지 않았습니다.)
저에게 효과가 있었던 것은 디스트 폴더를 제거하는 것이었습니다. (.ts 파일에서 .js 파일이 생성된 폴더, 이 폴더에 대한 경로는 보통 tsconfig.json에 지정됨).
간단한 해결책이지만 효과적인 마법 :)
실수로 /src 외부로 파일을 이동하여 /build 디렉토리의 구조를 변경하여 지금 패키지에 있습니다.json..."dev:serve": "nodemon --inspect=4899 build/index.js",
존재하지 않았습니다...js build/src/index.js다에 .
저도 마찬가지입니다. 방금 "dist" 파일을 삭제하고 앱을 다시 실행하여 해결했습니다.
제가 사용하려던 Node 패키지는 이전 버전의 Node에서만 작동합니다.
홈브루를 사용하여 이전 버전의 노드를 설치함으로써 수정할 수 있었습니다.
brew unlink node
brew install node@12
echo 'export PATH="/usr/local/opt/node@12/bin:$PATH"' >> ~/.zshrc
위의 명령에서 Node 버전을 편집한 다음 PATH 명령을 내보내야 합니다.
아래 명령을 통해 문제가 해결되었습니다.
npm install node-gyp -g
npm install bcrypt -g
npm install bcrypt -save
했습니다.puppeteer, mocha and chai
npm uninstall puppeteer mocha chai
명령 줄에서 다음 명령을 사용하여 다시 설치합니다.
npm install puppeteer mocha chai
그리고 오류 메시지는 단지 나타나지 않았습니다.
같은 오류가 발생했습니다.
nodemon -w server.js server.js
[nodemon] 2.0.2
[nodemon] reading config .\nodemon.json
[nodemon] to restart at any time, enter `rs`
[nodemon] or send SIGHUP to 19248 to restart
[nodemon] ignoring: .\node_modules/**/* .\.next/**/*
[nodemon] watching dir(s): server.js
[nodemon] watching extensions: js,json
[nodemon] starting `node server.js index.js`
[nodemon] forking
[nodemon] child pid: 18840
[nodemon] watching 30 files
internal/modules/cjs/loader.js:797
throw err;
^
Error: Cannot find module 'D:\Programming\01a.nextjs\project\index.js'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:794:15)
at Function.Module._load (internal/modules/cjs/loader.js:687:27)
at Function.Module.runMain (internal/modules/cjs/loader.js:1025:10)
at internal/main/run_main_module.js:17:11 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
[nodemon] app crashed - waiting for file changes before starting...
여기서 나온 조언들을 다 따라갔는데, 하나도 안 통했어요.제가 발견한 것은 server.js를 자신의 폴더 server/server.js에서 옮겼지만 패키지로 옮겼다는 것입니다.json 나는 이것으로부터 변화를 주는 것을 잊었습니다.
"dev": "nodemon -w server.js server.js",
"build": "next build",
"start": "NODE_ENV=production node server.js"
다음 항목에 대해:
"dev": "nodemon -w server/server.js server/server.js",
"build": "next build",
"start": "NODE_ENV=production node server/server.js"
을 한 후를 다시 과(와)npm run dev
모든 게 잘 작동했습니다.
프로젝트 폴더 이름을 바꿨는데 작동이 됐어요, 왜 그런지 모르겠어요 :)
서버를 시작해야 합니다. follow 명령을 사용합니다.
npm start
아니면
yarn start
sundpmi cjs-loader를 실행한 후에 드디어 효과가 있었습니다(그리고 express-http-proxy 뿐만 아니라 express를 설치해야 합니다).
노드/express에서 작업하는 경우 터미널에서 이 작업을 실행하는 것을 고려합니다.
npm i cjs-loader
언급URL : https://stackoverflow.com/questions/53545800/internal-modules-cjs-loader-js582-throw-err
'programing' 카테고리의 다른 글
두 데이터베이스의 구조를 비교하시겠습니까? (0) | 2023.09.25 |
---|---|
Python 프로젝트에서 Google API를 사용하도록 GOOGLE_APPLICATION_CREEDENCALES 설정 (0) | 2023.09.20 |
브라우저의 스크롤 바 크기를 얻으려면 어떻게 해야 합니까? (0) | 2023.09.20 |
이 C 코드가 이 C++ 코드보다 빠른 이유는 무엇입니까? 파일에서 가장 큰 줄을 사용합니다. (0) | 2023.09.20 |
angularjs-app에서 ($q 사용) 모든 비동기 동작에 대한 로딩 지시자를 만드는 방법 (0) | 2023.09.20 |