In this tutorial, we are going to learn about how to fix the cannot find module ‘semver’ error in Node.js.
When we try to install a node module using the
npm install command sometimes we will get the following error in the terminal.
module.js:329 throw err; ^ Error: Cannot find module 'semver' at Function.Module._resolveFilename (module.js:337:15) at Function.Module._load (module.js:287:25) at Module.require (module.js:366:17) at require (module.js:385:17)
This error occurs due to the
package-lock.json file is corrupted in your project because of node version change.
To fix the error, follow the below steps.
- Remove the
package-lock.jsonfile, inside your project directory by using the below command.
rm-rf node_modules package-lock.json
or you can remove it manually by right-clicking on it and selecting the
- Clear the npm cache.
npm clean cache --force
- Re-install the node modules again by running the
Note: The above steps can work on Windows, mac, Ubuntu
If you’re still facing the error, then uninstall all node versions in your system and reinstall the node again.
Verify if the node is successfully installed or not using the below commands.
node -v # for node npm -v # for npm
The Cannot find module ‘semver’ error occurs if you’re trying to run an
npm install command in your project. To solve the error remove the
package-lock.json file and
node_modules folder from your project and run the
npm install command to re-install it.
If the issue still persists remove the node.js completely from your system and re-install it again.
For mac os follow the tutorial to uninstall and install the node.