npm install给出错误“找不到package.json文件”


75

npm install/npm install -g 命令在Windows 7中不起作用

Node.js已正确安装,node.js版本为v0.10.28

无法读取依赖项
ENOENT,打开'“ filepath” \ package.json'
这很可能不是npm本身的问题。
npm在当前目录中找不到package.json文件。

照片



1
“不工作”不是很有用。从您的屏幕快照看来,中存在问题package.json。您可以发布其内容吗?日志说什么?(实际上,这ENOENT意味着npm无法读取指定的文件。您的软件包文件在哪里?您根本没有一个文件吗?)
2014年

是的,此生成npm-debug.log文件的链接如下:jsfiddle.net/goldfingerxyz/Whz35
Subhajit Panja 2014年

您可能还需要确保以管理员身份运行命令提示符。
KSwift87

Answers:


87

您没有说要安装什么模块-因此npm寻找一个package.json描述您的依赖项的文件,显然该文件丢失了。

因此,您必须明确告诉npm要安装哪个模块,例如

npm install express

要么

npm install -g express-generator

或者您必须添加package.json文件并在此处注册模块。获取此类文件的最简单方法是让npm通过运行创建一个

npm init

然后添加所需的内容。请注意,这仅适用于本地安装的模块,不适用于全局模块。

一个简单的示例可能如下所示:

{
  "name": "myapp",
  "version": "0.0.1",
  "dependencies": {
    "express": "4.0.0"
  }
}

或类似的东西。有关该package.json文件的更多信息,请参见其官方文档此交互式指南


为此多谢了。在这里停留了2天。
拨弄


6

我不确定您要在这里做什么:

npm install 仅在主目录中没有什么作用-它不是节点应用程序的根目录,因此无需安装任何内容,因为没有package.json。

有两种可能的解决方案:

1)cd到节点应用程序并在npm install那里运行。要么

2)如果你想安装的东西作为命令的外壳使用(你没有一个节点应用)npm install -g packagename-g标志告诉它安装在全局名称空间中。


5

>>对于使用程序包管理器控制台的Visual Studio用户,<<

如果要在Visual Studio中使用程序包管理器控制台,并且要执行:

npm install 并获得:

ENOENT:没有此类文件或目录,请打开“ C:\ Users ... \ YourProject \ package.json”

验证您是否在正确的目录中执行命令

VS默认在打开Package Manager控制台时使用解决方案文件夹

执行dir后,您可以查看当前所在的文件夹。这很可能是在解决方案文件夹中的原因。现在您必须转到cd项目文件夹。

cd YourWebProject

现在npm install应该可以正常工作,如果没有,那么您还有另一个问题。


4

使用以下命令创建package.json文件。

npm init 
npm init --yes or -y flag

[此方法将使用从当前目录提取的信息来生成默认的package.json。]

使用package.json


1

检查此链接以获取有关如何在本地为应用程序安装express.js的步骤。

但是,如果由于某种原因要在全局范围内安装Express,请确保您所在的目录是Node的安装目录。在我的Windows 10上,package.json位于

C:\Program Files\nodejs\node_modules\npm

以管理员身份打开命令提示符,然后将目录更改为package.json所在的位置。

然后发出install命令。



0

我面临以下相同的问题。

npm ERR!errno -4058 npm错误!syscall打开npm ERR!enoent ENOENT:没有这样的文件或目录,打开'D:\ SVenu \ FullStackDevelopment \ Angular \ Angular2_Splitter_CodeSkeleton \ CodeSke leton \ run \ package.json'npm ERR!enoent这与npm无法找到文件有关。npm ERR!天生的

我遇到的问题是,我正在运行命令npm build run而不是运行npm run build

只是分享帮助那些像我一样犯小错误的人。



0

首先,您不在当前文件夹中...

请使用CD连接到文件夹名称,以访问已查询的项目文件夹...

然后使用代码


最好做出一个简洁的答案,而不是分散这些位。因此,它是Q&A格式的网站,而不是论坛或聊天室
Double Expresso
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.