我在C:\ Program Files(x86)\ nodejs
中安装了nodejs然后我创建了一个.js文件并将其保存在我的桌面上,只是为了在控制台中输出'hello world':
console.log('hello world');
当我尝试从命令提示符运行文件时:
C:\Users\Laura>cd desktop
C:\Users\Laura\Desktop>node nodeTest.js
我明白了:
module.js:340
throw err;
^
Error: Cannot find module 'C:\Users\Laura\Desktop\testNode.js'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:901:3
我阅读了许多其他相关问题,其中一些建议运行安装,所以我做了。
C:\Users\Laura>npm install -g express
但没有运气,仍然收到相同的错误信息。
答案 0 :(得分:34)
编辑:这个答案已经过时了。使用Yarn和NPM 5的锁定文件之类的东西,现在可以更容易地确保您在Heroku等平台上的依赖性是正确的
我有一个类似的问题与node_modules
在某种程度上在本地进行了修改,但是更改没有反映在Heroku上,导致我的应用程序崩溃。如果这是您的问题,那么相对容易解决:
# Remove node_modules
rm -fr node_modules
# Reinstall packages
npm i
# Commit changes
git add node_modules
git commit -m 'Fix node_modules dependencies.'
git push heroku master
希望对有类似问题的其他人有所帮助。
答案 1 :(得分:19)
我遇到了一个曾经有人写过的服务器的问题。事实证明,我没有安装脚本所需的一些东西。
这question对我有帮助。
我最终能够使用:
npm install yourMissingDependency
虽然在您的实例中它可能只是一个文件,但它没有路径。 您可以尝试将该文件放在运行节点脚本的同一文件夹中。
答案 2 :(得分:5)
我认为问题是NODE_PATH环境变量。我有同样的问题,但一旦我发布(在Windows上)
set NODE_PATH=C:\Users\MyUser\node_modules
然后一切正常。
干杯,
答案 3 :(得分:3)
重新启动命令提示符并检查路径变量(类型:路径)。 如果你无法从输出中找到find nodejs installation dir,请将它添加到路径变量中,并记得再次重新启动cdm ...
答案 4 :(得分:3)
我有一个几乎完全相同的问题,原来我的JS文件实际上并不在我调用它的文件夹中,而且我的文件夹太深了。 我上了一个目录,运行了文件,它认出来了,很快就过去了。
或者,如果您向上移动一个文件夹,并且它给出了相同的错误,但是关于不同的模块,请将相同的文件放在父文件夹中,然后将其移动到您之前尝试运行的子文件夹中。< / p>
TL; DR-您的文件或其模块不在您认为的文件夹中。上一级
答案 5 :(得分:2)
尝试在Node命令行环境中输入:
.load c:/users/laura/desktop/nodeTest.js
。
它应该适用于你想要做的事情。
如果要直接调用该文件,则必须将其放在Node安装所在的根目录中。
答案 6 :(得分:2)
Hi Phonegap / Cordova / Ionic开发人员,
I solved this issue by doing the following
1. C: drive -> Users -> "username" eg. john -> AppData -> Roaming
2. Inside the "Roaming" folder you need to delete both "npm" and "npm-cache"
folder.
3. Now build your project, and it should work
快乐的编码!!!
答案 7 :(得分:1)
我遇到了同样的问题。我只是复制了testNode.js文件(包含测试代码)并手动粘贴到nodejs目录的根目录中。我试过这个命令C:\Program Files (x86)\nodejs>node testnode.js
答对了!我收到了这条消息。
然后我在浏览器中输入了这个网址并收到了消息&#34; Hello World&#34;。 希望这对某人有所帮助。
答案 8 :(得分:1)
你需要:
uploaded
的勾号
Hide extensions for known file types
testNode.js.txt
以便将要解析的文件作为JS文件就是这样,现在它有效了!
答案 9 :(得分:0)
如果您使用的是Express之类的框架,则需要将package.json文件放入您正在使用的文件夹中,并且不要忘记更改主体名称。
答案 10 :(得分:0)
在我的情况下,出现此错误是因为我位于错误的目录中。所以节点找不到我要运行的模块。只要确保您的节点文件在您的桌面目录中即可。
答案 11 :(得分:0)
当我尝试运行我的第一个节点应用程序时,我遇到了相同的问题,但是当我尝试查看可能是什么问题时,它就是文件的路径。我从其他位置运行节点.js,因此遇到了问题。当我固定路径时,效果很好。
答案 12 :(得分:0)
我执行了以下命令,它适用于我。
PM> npm install ee-first ee-first@1.1.0 node_modules\ee-first
答案 13 :(得分:0)
我有同样的问题,但最后我尝试在同一个项目文件夹中复制Node_modules文件夹,并且它有效。
答案 14 :(得分:0)
npm start
。c:\users\MyUser\npm-debug.log
C:\\Program Files\\nodejs\\\\node.exe
致电node.exe + <full path to your server file.js>
Server is listening on port 1337 !
答案 15 :(得分:0)
我也遇到了这个问题,这是由于我们在运行时提到的错误路径。检查文件路径,并确保目录名称之间没有空格。
答案 16 :(得分:0)
解决此问题的简便方法
npm link e
答案 17 :(得分:0)
尝试npm install --production
,然后npm start
。
答案 18 :(得分:0)
我遇到了同样的问题,然后我发现我没有在 server.js 所在的正确目录中点击 node server 命令。
希望这有帮助。
答案 19 :(得分:-1)
确保您将文件另存为JavaScript。取消选中“文件夹选项”窗口中的“隐藏所有已知类型的扩展名”复选框将显示正确的文件扩展名(文件夹&gt;&gt;视图&gt;&gt;选项)。
答案 20 :(得分:-1)
尝试运行node-red时面临同样的问题。
node <directory structure where js is located>/red. js
就我而言:
node AppData/Roaming/npm/node_modules/node-red/red.js