Внутренний / модули / cjs / loader.js: 582 бросить ошибку

Я получаю следующую ошибку консоли. 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)

Общие ответы caseyjustus, ttfreeman, Bishwajit Vikram, Muhammad Tahir, Andrew Koper заключаются в том, что ошибка в вопросе появляется, когда node вызывается на файл, который не существует. (!) - Рассмотрите возможность чтения https://stackoverflow.com/questions/53545800#62740853.

Henke 06.07.2020 13:07

У меня была такая же проблема ... Я понизил версию webpack-dev-server до версии 2.5.1. Теперь все работает нормально.

Nikita Bhutada 30.01.2021 07:42

Я решил это, используя пряжу вместо npm

Áron Pop Adorján 06.08.2021 09:05

Эту ошибку также можно увидеть, если использовать nvm run вместо npm run.

Gayan Weerakutti 21.10.2021 22:34
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
80
4
312 226
36
Перейти к ответу Данный вопрос помечен как решенный

Ответы 36

Ответ принят как подходящий

У меня была такая же проблема, когда я впервые попробовал node js.
Я заметил, что эта проблема возникла со мной, потому что у меня было несколько файлов .js с одинаковыми именами в разных каталогах, которые находились в одном и том же основном каталоге. Я создал другой каталог вне основной папки проекта и создал файл .js. После этого все заработало. ex- app.js

Я не понял что ты имеешь в виду

Tito 18.06.2020 10:50

@Tito В моем конкретном случае я запускал сценарий package.json, который был node 'Server/index.js', а должен был быть node index.js. Я думаю, что это перевод и этого ответа.

Andrew 22.01.2021 06:53
  1. Удалить каталог node_modules
  2. Удалите файл package-lock.json
  3. Запускаем npm install
  4. Запускаем npm start

ИЛИ

rm -rf node_modules package-lock.json && npm install && npm start

Отметьте это stackoverflow.com/questions/31976722/…

Parth kharecha 02.07.2020 19:22

Я подтверждаю, что этот ответ получил много положительных отзывов. Однако я бы настоятельно рекомендовал быть осторожным с данным здесь советом. Все ответы caseyjustus, ttfreeman, Bishwajit Vikram, Muhammad Tahir, Andrew Koper объединяет то, что ошибка в вопросе появляется, когда node вызывается на файл, которого на самом деле нет. (!) - Переустановка Node.js должна выполняться только в крайнем случае - когда все остальное не удалось. Вы можете избавить себя от некоторых проблем, сначала прочитав этот ответ.

Henke 05.07.2020 17:53

Что мне помогло, так это поместить файл .js, с которым я работал, в новую папку, перетащить эту папку в VS Code (чтобы открыть каталог непосредственно в VS Code), открыть терминал в VS Code, а затем просто ввести node <filename>.js (или в моем случае node index.js).

Я уже установил node в своей системе, но по какой-то причине я все еще получал указанную вами ошибку, даже когда я ввел прямой путь к файлу, то есть node /desktop/index.js.

Итак, создание новой папки на моем рабочем столе, размещение файла .js внутри этой папки, открытие этой папки в VS Code и последующий ввод node index.js в терминале решили мою проблему.

Замените имя вашего файла в package.json ({"npm": <your server code file name>.js}) на тот файл, в котором запущен код вашего сервера (это должен быть app.js, main.js, start.js, server.js или любой другой файл, который вы выбрали).

Конкретный файл .js находился в подпапке (/ src) приложения, а Терминал был в общей папке приложения. (Которая содержит все файлы пакетов, модули, общую папку, папку src), он выдавал эту ошибку. src) приложения решила мою проблему.

У меня была такая же ошибка, потому что у меня был пробел в конце моего имени файла (не ссылка, а фактическое имя файла). Как только я изменил app.js на app.js, все заработало.

У меня была такая же проблема, пробел в имени файла :)

Sodhi saab 14.03.2021 15:30

То же самое случилось со мной, я только что решил, удалив файл «dist» и повторно запустив приложение.

Для меня пакет Node, который я пытался использовать, будет работать только в более старой версии Node.

Я смог исправить это, используя Домашнее пиво для установки более старой версии Node:

brew unlink node
brew install node@12
echo 'export PATH = "/usr/local/opt/node@12/bin:$PATH"' >> ~/.zshrc

В приведенных выше командах вам нужно будет отредактировать версию узла, а затем экспортировать команду 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

и сообщение об ошибке просто так и не появилось

мне это действительно помогло. Спасибо!

Kevin_Mac 21.12.2020 07:37

Прошлой ночью со мной случилось что-то странное. Я запустил команду node run watch вместо npm run watch. Я пробовал делать все в этой теме, но у меня ничего не вышло. Я был расстроен, но в конце концов заметил, что неправильно выполнил команду. Я громко смеялся. Иногда такое случалось. Тем не менее, мне нравится изучать Nodejs.

попробуйте следующую команду

удалить node_modules и package-lock.json

rm -rf node_modules package-lock.json

затем запустите следующую команду, чтобы установить зависимости

npm install

наконец, запустите свой пакет, выполнив следующую команду.

npm start

У меня не сработало

jkalandarov 28.09.2021 14:24

Убедитесь, что вы указали правильный адресный путь для app.js при запуске node <path>/app.js. Не может найти

Error: Cannot find module 'C:\Users\User\Desktop\NodeJsProject\app.js'

У меня такая же ошибка:

 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, но в package.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, все заработало.

Я изменил имя папки моего проекта, и это сработало, я не знаю почему :)

Это случилось со мной, но я считаю, что имя родительской папки сбивает с толку npm из-за наличия специальных символов.

StvnSpnz 31.05.2020 21:59

Когда я использовал приведенную ниже команду, я тоже получал ту же ошибку:

node .function-hello.js

Я изменил свою команду на команду ниже, она работала нормально:

node .\function-hello.js

Для меня снова сработало "npm install" из командной строки. Командная строка должна быть «Запуск от имени администратора».

вам нужно запустить сервер, используйте следующую команду

npm start

или

yarn start

Это было упс. Я запускал запуск узла вместо запуска npn. Слишком глупо!

Moksh 17.10.2020 14:14

Путь к js-файлу, который вы пытаетесь выполнить, неверен; вам нужно ввести путь и имя файла, который вы хотите выполнить, относительно root, где находится узел, но то, что вы ввели, находится не там, где он находится.

Я набрал node redux-basics.js, получил немного вводящее в заблуждение сообщение об ошибке Stack Overflow'ed, посмотрел на свою файловую систему и должен был набрать node src/redux-basics.js.

Создайте файл .js внутри основного каталога, а не внутри подпапок, таких как public или src.

Это сообщение об ошибке легко воспроизвести.

  • Откройте окно терминала. (В Windows: WinKey, cmd, Enter. В Linux: Ctrl + Alt + t.)
  • Введите npm и нажмите Enter, чтобы проверить, установлен ли Node.js.
  • Если у вас есть command not found, скачайте по https://nodejs.org/en/download/ и устанавливаем
    (В Linux / Ubuntu: sudo apt install nodejs, если хотите.)
  • Введите (или вставьте) node thisFileDoesNotExist.js (и нажмите Enter).

В Windows ожидайте увидеть что-то похожее на:

internal/modules/cjs/loader.js:969
  throw err;
  ^

Error: Cannot find module [... + a few more lines]

В Linux (Ubuntu 18.04):

module.js:549
  throw err;
  ^

Error: Cannot find module [...]

Я не пробовал macOS, но и там ожидал чего-то похожего.

Примечание: это могло произойти без видимой причины при отладке в Visual Studio Code.
Если вы получили ошибку внутри VScode, посмотрите, не ответит ли HappyHands31 может помочь.


Наконец, для запуска Node.js в терминале без возникает ошибка, в терминале Windows (командная строка) попробуйте:

echo console.info('\nHello world!')> hello.js
node hello.js

В терминале Linux попробуйте:

echo "console.info('\nHello world\!\n')"> hello.js
node hello.js

Конечно, ожидайте увидеть ответ терминала:

Hello world!

Комментарий Caseyjustus мне помог. По-видимому, у меня было место в моем требовании пути.

const listingController = require("../controllers/ listingController");

Я изменил свой код на

const listingController = require("../controllers/listingController");

и все было хорошо.

это наконец сработало для меня после того, как я сделал sudo npm i cjs-loader (и обязательно установил экспресс, а не только express-http-proxy)

Для тех, кто использует TypeScript, это вызвано опцией incremental в compilerOptions ваших настроек.

Это приводит к созданию файла tsconfig.tsbuildinfo, в котором хранятся все данные для кеша. Если вы удалите этот файл и перекомпилируете проект, он сразу же заработает.

Возникла аналогичная проблема с nodemon, работающим через докер,

стоит проверить, что ваш «основной» файл в package.json настроен так, чтобы указывать на правильную точку входа.

в package.json

"main": "server.js",
"scripts": {
    "start":"nodemon src/server.js",
    "docker:build": "docker build -f ./docker/Dockerfile . "
  },

Просто введите "узел NodeJsProject / app.js"

Ваша программа запустится :)

Возможно, вы запускаете команду терминала не из правильного каталога.

Если вы, например, создали новую папку, подумайте о том, чтобы перейти в папку, а затем запустить команду оттуда.

Перейдите в свой файл package.json и проверьте эту строку:

"main": "main.js

Файл, указанный в скобках, должен быть именно тем файлом, с которым вы пытаетесь запустить.

node main.js

Это решило мою проблему

У меня такая же проблема при работе в машинописном тексте с nestjs. По какой-то причине после попытки запустить отладку в VS Code в первый раз (с launch.json - кстати, это не сработало).

Для меня сработало: удалить папку dist (тот, который генерирует файлы .js из файлов .ts, путь к этой папке обычно указывается в tsconfig.json).

Простое решение, но сработало волшебство :)

если вы работаете с node / express, подумайте о том, чтобы запустить это в своем терминале

npm i cjs-loader

я случайно переместил файл за пределы / src, что изменило структуру результирующего каталога / build, поэтому теперь в package.json ... "dev:serve": "nodemon --inspect=4899 build/index.js", не существует ... теперь он находится в build / src / index.js

Для меня я только что установил пакет, и он сработал:

yarn add cjs-loader --save

или

npm i cjs-loader --save

Но обратите внимание, что иногда проблема не только в отсутствии этой библиотеки, но и путь к вашему файлу приложения app.js может не находиться внутри этой папки:

C:\Users\User\Desktop\NodeJsProject\

Он работал со мной после восстановления установки node.js из программ добавления / удаления.

Это было глобально, а не для одного проекта!

Это не дает ответа на вопрос. Как только у вас будет достаточно репутация, вы сможете комментировать любой пост; вместо этого дать ответы, не требующие пояснений от спрашивающего. - Из обзора

amenthes 21.08.2021 14:49

Для меня проблема была в моем Procfile. я имел

web: node src/index.js

Когда я должен был иметь:

web: node dist/index.js

Иногда: в редакторе кода VS невозможно получить точный путь к файлу, который вы пытаетесь запустить в данный момент. Убедитесь, что путь к вашему файлу такой же, как ваш файл, сохраненный на диске компьютера.

это ошибка!

Error : Cannot find module

означает, что редактор не может найти путь к файлу js

Когда я возился с узлом 14 и пытаясь заставить работать CJS и MJS, мне удалось добавить файл package.json в мой каталог server с помощью

{ type: "module" }

Я забыл, что добавил этот файл, и это стало причиной потраченных зря несколько часов на просмотр этой ошибки. Может, это кому-то поможет!

Другие вопросы по теме