节点 Nodemon 错误:找不到模块 'C:\Program Files\Git\node_modules\nodemon\bin\nodemon.js'
Posted
技术标签:
【中文标题】节点 Nodemon 错误:找不到模块 \'C:\\Program Files\\Git\\node_modules\\nodemon\\bin\\nodemon.js\'【英文标题】:Node Nodemon Error: Cannot find module 'C:\Program Files\Git\node_modules\nodemon\bin\nodemon.js'节点 Nodemon 错误:找不到模块 'C:\Program Files\Git\node_modules\nodemon\bin\nodemon.js' 【发布时间】:2018-09-08 13:58:54 【问题描述】: 我是 NodeJS 方面的初学者。 环境为 Windows 7 64 位。 节点已安装并正在运行。 NPM 也运行良好。 Nodemon 已安装。 (在应用内和全球范围内)现在当我运行命令时:
“nodemon server.js”或只是“nodemon”
它给出了以下错误:
module.js:549
throw err;
^
Error: Cannot find module 'C:\Program Files\Git\node_modules\nodemon\bin\nodemon.js'
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Function.Module.runMain (module.js:693:10)
at startup (bootstrap_node.js:188:16)
at bootstrap_node.js:609:3
我不明白这是什么意思?为什么它会在 Git 文件夹中查找?
它与环境变量有什么关系吗?但是 Node 和 NPM 都运行良好。
有什么想法/建议/解决方案吗?
以下是我的“server.js”文件,以供您参考。
var express = require("express");
var bodyParser = require("body-parser");
var morgan = require("morgan");
var path = require("path");
var app = express();
app.use(bodyParser.urlencoded(extended: true));
app.use(bodyParser.json());
app.use(function (req, es, next)
res.setHeader("Access-Control-Allow-Origin", "*");
res.setHeader("Access-Control-Allow-Methods", "GET, POST");
res.setHeader("Access-Control-Allow-Headers", "X-Requested-With, content-type, Authorization");
next();
);
app.use(morgan("dev"));
app.use(express.static(__dirname + "/app"));
app.get("*", function (req, res)
res.sendFile(path.join(__dirname + "/index.html"));
);
app.listen(8080);
console.log(">>>>> App is Running <<<<<");
【问题讨论】:
你安装了nodemon吗?我建议您不要全局安装它。使用命令 npm install --save nodemon。然后转到你的 package.json,将这一行放在你的脚本“server”中:“nodemon server.js”。最后,npm run server 运行你的应用 编写一个仅包含 console.log("hello") 的 Nodejs 脚本并使用 nodemon 运行它(没有其他包含,没有逻辑),看看会发生什么 大家好。我什么都试过了。本地安装,全局安装,仅使用“console.log()”运行应用程序。甚至更改“package.json”文件。但无论如何,当我使用 nodemon 运行任何命令时,它都会给出相同的错误。 我在 package.json 的脚本部分插入了行“start”:“nodemon server.js”。现在,当我运行命令“npm start”时,它正在工作。这类似于@dnp1204 的建议。我不知道当前配置有什么问题,但这有效。感谢你们所有人试图帮助我。赞赏。 看来,这是 MINGW64 的问题。如果我使用 Windows CMD 运行命令,一切正常。希望这可能对某人有所帮助。 【参考方案1】:删除项目中的 node_modules 并重新安装 nodemon 模块,运行以下命令;
rm -rf node_modules
npm install -g npm@latest
npm i nodemon
【讨论】:
【参考方案2】:您必须验证服务器名称 (servers.js) 在文件夹中的名称是否相同,( package.json ) 验证您不应创建的 main 和 start nodemon 的文件夹。
【讨论】:
【参考方案3】:确保你正在运行的 server.js 位于根目录中,并在项目的根目录中运行此命令
nodemon ./server.js
您也可以将 server.js 重命名为 index.js 并运行
nodemon
关于 nodemon 的更多信息: https://www.npmjs.com/package/nodemon
【讨论】:
您也可以使用process.chdir(__dirname);
在脚本中设置您当前的工作目录,请确保将其放在最顶部。【参考方案4】:
使用命令:npm run server
而不是 nodemon server.js,您将得到缺少哪个模块的确切错误。
【讨论】:
【参考方案5】:我认为这是一个典型的路径问题。您需要修复环境变量 PATH 才能使 npm 正确执行。
您需要添加的路径如下:C:\Program Files\nodejs\node_modules\npm\bin
找到 PATH 环境变量并添加您希望安装 npm 包的路径!
或者您可以导航到该目录并执行:npm config set prefix
【讨论】:
【参考方案6】:在我的情况下,我通过提到的方法解决了同样的问题,希望它会 在脚本标记中的 package.json 中帮助您
"start":"nodemon index.js"
并在终端中使用此命令运行
nodemon start
【讨论】:
以上是关于节点 Nodemon 错误:找不到模块 'C:\Program Files\Git\node_modules\nodemon\bin\nodemon.js'的主要内容,如果未能解决你的问题,请参考以下文章
找不到模块“gulp-nodemon”。在 Windows 7 上,32 位。使用电源外壳
Docker /bin/bash: nodemon: 找不到命令