Last updated: Apr 4, 2024
Reading timeยท3 min
To solve the NPM error "npm ERR! code ELIFECYCLE error":
npm cache clean --force
command to clear your NPM cache.node_modules
and package-lock.json
.npm install
.npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the build script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
The first thing you should try is to clear the cache using the following command.
npm cache clean --force
You can rerun your npm install
command after the cache has been cleared.
npm install
You can use the npm cache verify
command if you need to verify the contents of
the cache have been cleared.
npm cache verify
The npm cache verify
command verifies the contents and the integrity of the
cache folder.
If the error persists, try to reset your NPM registry.
npm cache clean --force npm config set registry https://registry.npmjs.org
If the error persists, try to delete your node_modules
and
package-lock.json (not
package.json
) and rerun npm install
.
# ๐๏ธ (Windows) delete node_modules and package-lock.json rd /s /q "node_modules" del package-lock.json # ๐๏ธ (macOS/Linux) delete node_modules and package-lock.json rm -rf node_modules rm -f package-lock.json # ๐๏ธ clean npm cache npm cache clean --force # ๐๏ธ install packages npm install # ๐๏ธ if you use YARN yarn install
Try to start your development server after running the npm install
command.
Another common cause of the error is running low on memory because your server needs more memory to operate than is available.
If you still get the error when installing packages, try to run the npm update
command.
npm update # ๐๏ธ if you get an error, use the `--legacy-peer-deps` flag npm update --legacy-peer-deps
The npm update
command updates all packages to the latest version and installs
missing packages.
Another thing you can try is to upgrade your version of NPM.
npm install -g npm@latest # ๐๏ธ If you get a permissions error on macOS / Linux sudo npm install -g npm@latest
If you get a permissions error on Windows, open CMD as an administrator and rerun the command.
To open CMD as an administrator:
Click on the Search bar and type CMD.
Right-click on the Command Prompt application and click "Run as administrator".
npm install -g npm@latest npm install -g npm@latest --force
If none of the suggestions helped, try to update your NPM packages.
The npm audit fix command scans your project for vulnerabilities and automatically installs compatible updates to vulnerable dependencies.
The npm audit fix --force
command installs major updates to top-level
dependencies, which might introduce breaking changes to your project if you rely
on older package versions.
npm install --legacy-peer-deps npm audit fix --force
Try to restart your terminal and development server after running the commands.
If the error persists, try running the npm update
command.
npm update
The --legacy-peer-deps
flag ignores all peer dependencies when installing (in
the style on npm
version 4 through 6).
Whereas, the --force
flag forces NPM to fetch remote resources even if a local
copy exists on disk.
--legacy-peer-deps
flagIf none of the suggestions helped, try to run your npm install
command with
the --legacy-peer-deps
flag.
npm install --legacy-peer-deps
If you got the error when installing a specific module, add the
--legacy-peer-deps
flag at the end of the command.
npm install react --legacy-peer-deps
Make sure to replace react
with the name of the module you're trying to
install.
Starting with NPM v7, NPM installs peerDependencies
by default, which means
that if you already have a peer dependency of the module installed, but not one
of the specified by the module versions, NPM throws an error.
The --legacy-peer-deps
flag tells NPM to ignore peer dependencies and to
proceed with the installation anyway.
This was the default behavior in NPM versions 4 through 6.
In other words, NPM modules name specific versions of their peerDependencies
.
If you have a different version of a peer dependency package installed, an error
is raised unless you set the --legacy-peer-deps
flag.