Ответ 1
Я получил это при попытке запустить Node REPL из каталога, который я уже удалил (из другой оболочки). Не позволяйте этому случиться с вами, или вам будет стыдно.
Я новичок в nodeJS, а также новичок в StackOverflow...
Я начинаю разрабатывать свой первый SPA, используя RequireJS для компиляции моих источников в папку "dist". У меня был NodeJS, запускающий базовый script для запуска моего сервера:
var connect = require('connect');
connect.createServer(
connect.static(__dirname)
).listen(8080);
Все работало хорошо, пока я не скомпилировал свой src снова. Это заменило все файлы, обслуживаемые моим сервером, поэтому я бы перезапустил Node. Я Ctrl ^ C, и с этого момента я не могу получить Node, чтобы начать заново. Когда я пытаюсь запустить:
olivier$ node server.js
Я получаю эту ошибку:
node.js:810
var cwd = process.cwd();
^
Error: ENOENT, no such file or directory
at Function.startup.resolveArgv0 (node.js:810:23)
at startup (node.js:58:13)
at node.js:901:3
Что странно, что я получаю ту же самую ошибку, просто пытаюсь запустить NodeJS, просто делая:
olivier$node
У кого-нибудь есть идея, что я могу сделать, кроме удаления Node и переустановки?
Я получил это при попытке запустить Node REPL из каталога, который я уже удалил (из другой оболочки). Не позволяйте этому случиться с вами, или вам будет стыдно.
Может ли быть, что RequireJS также воссоздает каталог, содержащий ваш server.js
?
Попробуйте и посмотрите, работает ли это:
$ cd $PWD; node server.js
Хотя кажется бесполезным изменить каталог на текущий каталог, обоснование заключается в том, что когда каталог удаляется, когда он является текущим рабочим каталогом вашей оболочки, оболочка остается в состоянии оборванности, поскольку она все еще "прикреплена" к ранее удаленной директории. Это также влияет на любые процессы, которые вы запускаете из этой оболочки (например, Node), и может приводить к запутывающим ошибкам.
Выполняя cd $PWD
, вы убедитесь, что ваша оболочка "повторно привязана" к вновь созданной версии каталога, разрешая состояние оборванности.
Удалите папку в другом терминале и сохраните ее файл. Откройте новый терминал в структуре папок и запустите файл.
Структура папки не была доступна в текущем терминальном сеансе. Когда вы закроете его и снова откроете терминал в вашей файловой директории, структура будет обновлена.
Я столкнулся с той же проблемой.
Чтобы решить эту проблему, введите следующую команду:
cd ..
ИЛИ
Check your directory in Terminal/CMD. and Change it.
На самом деле эта проблема возникает, когда вы удалили папку проекта с вашего компьютера и без изменения каталога попробуйте выполнить любую команду React-Native.
использование
cd .
в порядке
Но проблема в сервере
Это также может произойти из-за Capistrano, PM2, не сотрудничающих вместе. Убить, а потом запустить PM2 заново, помогло мне в моем случае. Я думаю, это может быть связано с тем, как capistrano хранит текущие и прошлые развернутые версии проекта.
Я столкнулся с такой же проблемой при запуске приложения в режиме кластера через pm2.
Я сделал следующее & это сработало, * казнен pm2 kill * Удалены node_modules * npm install * запустите приложение Ссылка: https://github.com/Unitech/pm2/issues/1244
Тогда это начало работать как ожидалось. Надеюсь, это поможет.
Если мы попытаемся выполнить какие-либо действия с уже удаленным файлом из другой оболочки, мы столкнемся с этой проблемой. Просто перезагрузите систему, она будет работать нормально (у меня это сработало)