43

我在 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

但是没有运气,仍然收到相同的错误消息。

4

21 回答 21

33

编辑:这个答案已经过时了。使用 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

希望对有类似问题的其他人有所帮助。

于 2014-08-07T18:20:21.013 回答
19

我在不久前有人写的服务器上遇到了同样的问题。事实证明,我没有安装脚本所需的一些东西。

这个问题对我很有帮助。

我最终能够使用:

npm install yourMissingDependency 

尽管在您的实例中它可能只是一个没有路径的文件。您可以尝试将该文件放在运行节点脚本的同一文件夹中。

于 2013-09-30T22:29:57.737 回答
6

我认为问题是 NODE_PATH 环境变量。我有同样的问题,但一旦我发出(在 Windows 上)

set NODE_PATH=C:\Users\MyUser\node_modules

然后一切正常。

干杯,

于 2014-04-29T09:29:21.067 回答
3

我有一个几乎相同的问题,结果我的 JS 文件实际上不在我调用它的文件夹中,而且我的文件夹太深了。我去了一个目录,运行了文件,它认出了它,从此愉快地度过了。

或者,如果你向上移动一个文件夹,它给你同样的错误,但是关于不同的模块,在你的父文件夹中获取相同的文件并将其移动到你之前尝试从中运行的子文件夹中。

TL;DR-您的文件或其模块不在您认为的文件夹中。上一层

于 2014-02-19T23:02:43.710 回答
3

重新启动命令提示符并检查路径变量(类型:路径)。如果找不到从输出中找到 nodejs 安装目录,请将其添加到路径变量并记住再次重新启动 cdm...

于 2014-02-04T09:20:38.843 回答
2

尝试在 Node 命令行环境中输入:

.load c:/users/laura/desktop/nodeTest.js.

它应该适用于您正在尝试做的事情。

如果要直接调用该文件,则必须将其放在 Node 安装所在的根目录中。

于 2013-09-24T01:04:50.580 回答
2

嗨,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

快乐编码!!!

于 2017-11-20T05:06:38.250 回答
1

我遇到了同样的问题。我只是复制了 testNode.js 文件(包含测试代码)并手动粘贴到 nodejs 目录的根目录中。我试过这个命令C:\Program Files (x86)\nodejs>node testnode.js 宾果游戏!我收到了这条消息。

在此处输入图像描述

然后我在浏览器中输入这个 url 并收到消息“Hello World”。希望这对某人有所帮助。

于 2014-04-30T01:23:49.173 回答
1

你需要:

  • Hide extensions for known file types从 Windows 资源管理器文件夹选项中删除勾选
  • 您的文件将显示为testNode.js.txt
  • 去掉尾随.txt以便文件解析为 JS 文件

就是这样,现在它可以工作了!

于 2016-10-27T22:56:18.827 回答
0

我也遇到了这个问题,这是由于我们在运行时提到的错误路径。检查您的文件路径,并确保您的目录名称之间没有空格。

于 2014-04-10T06:14:32.733 回答
0

我遇到了同样的问题,但最后我尝试将 Node_modules 文件夹复制到同一个项目文件夹中,并且成功了。

于 2015-02-01T00:59:47.917 回答
0

解决这个问题的简单方法

npm link e
于 2014-04-08T12:27:51.547 回答
0
  1. npm start在 Node.js 命令提示符中尝试。
  2. 查看消息的末尾 - 它在“其他日志记录详细信息...”中为您提供了日志文件的路径,例如c:\users\MyUser\npm-debug.log
  3. 在记事本中打开此文件并找到 Node.exe 的真实地址:类似于C:\\Program Files\\nodejs\\\\node.exe
  4. 尝试 cd 到这个路径
  5. 称呼node.exe + <full path to your server file.js>

    Server is listening on port 1337 !
    
于 2014-08-06T02:46:06.093 回答
0

尝试npm install --production然后npm start

于 2014-04-06T20:59:28.627 回答
0

我遇到了同样的问题,然后我发现我没有在server.js所在的正确目录中点击节点服务器命令。

希望这可以帮助。

于 2014-02-15T16:41:12.780 回答
0

如果您使用的是 express 之类的框架,则需要将 package.json 文件放入您正在使用的文件夹中,并且不要忘记更改主名称。

于 2020-12-02T19:51:22.937 回答
0

就我而言,我收到此错误是因为我只是在错误的目录中。所以节点找不到我想运行的模块。只要确保你的节点文件在你的桌面目录中。

于 2020-08-10T11:59:59.037 回答
0

我执行了以下命令,它对我有用。

PM> npm install ee-first ee-first@1.1.0 node_modules\ee-first
于 2015-08-19T22:32:41.393 回答
0

当我尝试运行我的第一个节点应用程序时,我遇到了同样的问题,但是当我试图查看可能是什么问题时,它是文件的路径。我正在从不同的位置运行节点 .js,因此遇到了问题。当我修复路径时,它工作正常。

于 2019-09-25T12:29:33.043 回答
-1

尝试运行 node-red 时遇到了同样的问题。

node <directory structure where js  is located>/red. js

就我而言,它是:

node AppData/Roaming/npm/node_modules/node-red/red.js
于 2016-10-04T11:39:27.527 回答
-1

确保将文件保存为 JavaScript。取消选中“文件夹选项”窗口中的“隐藏所有已知类型的扩展名”复选框将显示正确的文件扩展名(文件夹>>查看>>选项)。

于 2016-02-01T05:22:04.563 回答