96
votes

I just want to install socket.io to my project which is located on 3.chat folder. But when I run following command it shows following Warnings.And its not created a node_modules directory inside my project folder. How to fix this?

C:\Users\Nuwanst\Documents\NodeJS\3.chat>npm install socket.io
C:\Users\Nuwanst
`-- [email protected]

npm WARN enoent ENOENT: no such file or directory, open 'C:\Users\Nuwanst\package.json'
npm WARN Nuwanst No description
npm WARN Nuwanst No repository field.
npm WARN Nuwanst No README data
npm WARN Nuwanst No license field.
19
make sure you have extracted the zip file correctlycsandreas1

19 Answers

107
votes

Have you created a package.json file? Maybe run this command first again.

C:\Users\Nuwanst\Documents\NodeJS\3.chat>npm init

It creates a package.json file in your folder.

Then run,

C:\Users\Nuwanst\Documents\NodeJS\3.chat>npm install socket.io --save

The --save ensures your module is saved as a dependency in your package.json file.

Let me know if this works.

108
votes

If you already have package-lock.json file just delete it and try again.

42
votes

Delete package-lock.json it works for me

then npm install

9
votes

You need to make sure if package.json file exist in app folder. i run into same problem differently but solution would be same

Run this command where "package.json" file exist. even i experience similar problem then i change the folder and got resolve it. for more explanation i run c:\selfPractice> npm start whereas my package.json resides in c:\selfPractice\frontend> then i change the folder and run c:\selfPractice\frontend> npm start and it got run

6
votes

NOTE: if you are experiencing this issue in your CI pipeline, it is usually because npm runs npm ci instead of npm install. npm ci requires an accurate package-lock.json.

To fix this, whenever you are modifying packages in package.json (e.g. moving packages from devDependencies to Dependencies like I was doing) you should regenerate package-lock.json in your repository by running these commands locally, and then push the changes upstream:

rm -rf node_modules
npm install
git commit package-lock.json
git push
5
votes

finally, I got a solution if you are getting:-

**npm WARN tar ENOENT: no such file or directory,.......**

then it is no issue of npm or its version it is os permission issue to resolve this you need to use below command:-

sudo chown -R $USER:$USER *

additional

sudo chmod -R 777 *

then run:-

sudo npm i 
3
votes

If your folder already have package.json

Then,

Copy the path of package.json

Open terminal

Write:

cd your_path_to_package.json

Press ENTER

Then Write:

npm install

This worked for me

1
votes

Make sure you are on the right directory where you have package.json

1
votes

Delete package.json and package-lock.json file

Then type npm init

after that type npm install socket.io --save

finally type npm install

It works for me

1
votes

update version in package.json is working for me

1
votes

This worked for me:

I simply cd "C:\the_path_of_the_project_where_package.json_is"

before I ran "npm start"

0
votes

if your node_modules got installed in say /home/UserName/ like in my case, your package-lock.json file will also be there. just delete this file, go back to your app folder and run npm init and then npm install <pkgname> (e.g express) and a new node_modules folder will be created for your.

0
votes

I had this in a new project on Windows. npm install had created a node_modules folder for me, but it had somehow created the folder without giving me full control over it. I gave myself full control over node_modules and node_modules\.staging and it worked after that.

0
votes

You can use npm init to create a package.json.

0
votes

Run command - npm init No file directory found issue got resolved

0
votes

Seems you have installed express in root directory.Copy path of package.json and delete package json file and node_modules folder.

0
votes

If you're trying to npm install on a folder that's being rsync'd from somewhere else, remember to add this to your rsync --exclude

yourpath/node_modules

Otherwise, NPM will try to add node_modules and rsync will remove it immediately, causing many npm WARN enoent ENOENT: no such file or directory, open errors.

-1
votes

the file path you ran is wrong. So if you are working on windows, go to the correct file location with cd and rerun from there.

-2
votes

we need to create package.json by entering npm init and enter package name as package.json and optionally fill other requirements else press enter and at last enter yes to confirm. Great!! Now install any npm package without any error.

npm install <package_name>

Windows10