简体   繁体   中英

Node Nodemon Error: Cannot find module 'C:\Program Files\Git\node_modules\nodemon\bin\nodemon.js'

  • I am a beginner at NodeJS stuff.
  • Environment is Windows 7 64 Bit.
  • Node is installed and working.
  • NPM is also working fine.
  • Nodemon is installed. (In App and also Globally)

Now when I run the command:

"nodemon server.js" or just "nodemon"

it gives the following error:

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
  • I don't understand what this means? And why is it looking inside the Git folder?
  • Does it have to do anything with Environment Variable? But Node and NPM are both working fine.
  • Any ideas/suggestion/solution?

Below is my "server.js" file in case you need for reference.

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 <<<<<");

remove node_modules in your project and than install reagain nodemon module, run below commands;

 rm -rf node_modules npm install -g npm@latest npm i nodemon

In my case it was same issue I solved it by mentioned method hope it will help you so in package.json in script tag

  "start":"nodemon index.js"

   

and in terminal with this command run

  nodemon start

您必须验证服务器名称 (servers.js) 在文件夹中的名称是否相同,( package.json ) 验证main启动您不应该为 nodemon 创建文件夹。

make sure you are running the server.js is in the root directory and run this command in root directory of your project

nodemon ./server.js

Also you can rename server.js to index.js and just run

nodemon

More on nodemon: https://www.npmjs.com/package/nodemon

使用命令: npm run server而不是 nodemon server.js,您将得到缺少哪个模块的确切错误。

I think this is a typical path problem. You need to fix your environment variable PATH for npm to execute correctly.

the path you need to add looks like: C:\Program Files\nodejs\node_modules\npm\bin

Find the PATH env var and add the path you expect your npm packages to install from!

Or you can navigate to that directory and execute: npm config set prefix

Nodemon is looking for the main config in the package.json, Which may be missing. try to add main property in package.json with the key of your entry file. for example:-

"main":"src/main.ts"

“开始”:“nodemon src/app.js”

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM