- 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 <<<<<");
- 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 <<<<<");
Share
Improve this question
edited Apr 13, 2018 at 20:50
Ankit Prajapati
asked Mar 29, 2018 at 14:42
Ankit PrajapatiAnkit Prajapati
1,4733 gold badges14 silver badges23 bronze badges
8
- 2 have you installed nodemon? I recommend you not install it globally. Use command npm install --save nodemon. Then go to your package.json, put this line in your scripts "server": "nodemon server.js". Finally, npm run server to run your app – dnp1204 Commented Mar 29, 2018 at 14:44
- Write a Nodejs Script that just console.log("hello") and run that with nodemon (no other includes, no logic) and see what happens – akaphenom Commented Mar 29, 2018 at 14:45
- 1 Hey Guys. I tried everything. Installing Locally, installing globally, running App with just "console.log()". Even altering "package.json" file. But no matter what, it's giving the same error when I run any command with nodemon. – Ankit Prajapati Commented Mar 29, 2018 at 15:04
- 1 I inserted the line "start": "nodemon server.js" in the scripts section of package.json. Now, when I run the command "npm start", it is Working. This is similar to what is suggested by @dnp1204. I don't know what was the issue with the current configuration, but this worked. Thanks to all of you for trying to help me out. Appreciated. – Ankit Prajapati Commented Mar 29, 2018 at 15:35
- 3 It seems that, this is an issue with MINGW64. If I utilize Windows CMD to run the commands, everything is working fine. Hope this might helps somebody. – Ankit Prajapati Commented Mar 29, 2018 at 18:37
10 Answers
Reset to default 2remove 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
you must validate that the server name (servers.js) is called the same inside the folder, ( package.json ) validate main and start you should not create folders for 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
Use command: npm run server
and not nodemon server.js you will get exact error that which module is missing.
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"
"start": "nodemon src/app.js"
Uninstall current nodemon and try to install nodemon globally, then run it again.
npm i nodemon -g
Please check your parent folder name - the folder name or any file name should not contain any symbol like %^&*#$ if contains means this kind of error will occur