npm找不到package.json


153

我正在尝试安装一些示例的依赖项:express 2.5.8我已经下载了npm ,但是所有应用程序都抛出相同的错误:

c:\node\stylus>npm install -d
npm info it worked if it ends with ok
npm info using npm@1.1.1
npm info using node@v0.6.11
npm ERR! Couldn't read dependencies.

npm ERR! Error: ENOENT, no such file or directory 'c:\node\stylus\package.json'
npm ERR! You may report this log at:
npm ERR!     <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR!     <npm-@googlegroups.com>
npm ERR!
npm ERR! System Windows_NT 6.1.7600
npm ERR! command "C:\\Program Files (x86)\\nodejs\\\\node.exe" "C:\\Program File
s (x86)\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "-d"
npm ERR! cwd c:\node\stylus
npm ERR! node -v v0.6.11
npm ERR! npm -v 1.1.1
npm ERR! path c:\node\stylus\package.json
npm ERR! code ENOENT
npm ERR! message ENOENT, no such file or directory 'c:\node\stylus\package.json'

npm ERR! errno {}
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     c:\node\stylus\npm-debug.log
npm not ok

堵塞似乎是:

没有这样的文件或目录'c:\ node \ stylus \ package.json

我是否错过了创建的步骤package.json

我在跑:

  • Windows 7 64位
  • npm 1.1.1
  • 节点6.11
  • 快递2.5.8

您是如何下载软件包的?您能以通常的方式安装它们npm install <package>吗(例如?)
Linus Thiel 2012年

我没有尝试过,因为我不知道应用程序中到底使用了哪些软件包。如何找到答案,以便尝试手动安装?
imjp 2012年

1
npm view <package>将向您显示package.json以及相关性。另外,npm help是你的朋友。
莱纳斯·泰尔

我已经用签出了打包文件,npm view package但是出现了这个错误:i.imgur.com/AwGHu.gif。我正在尝试让其中一些工作:github.com/visionmedia/express/tree/2.x/examples
imjp 2012年

2
嗯... <package>只是一个例子。尝试例如npm view stylus
莱纳斯·泰尔

Answers:


92

更新2018

这已成为一个很受欢迎的问题,我的回答(尽管标记为正确)不再有效。请参考以下Deepeep的答案:

npm init

原始过时的答案

我认为您忘记设置快递目录:

express <yourdirectory>

完成后,您应该可以看到一堆文件,然后应该运行以下命令:

npm install -d

问候。


2
如果我以前使用“ npm install -g express”进行安装,那么express在哪里?
体育“

1
您需要使用> Express 4.0.0执行“ npm install -g express-generator”。来源:stackoverflow.com/questions/23002448/express-command-not-found,之后可以执行express命令
Lucian Depold 2014年

UBUNTU控制台建议sudo apt install node-express-generator......那么,什么是最好的,apt install 还是npm install
彼得·克劳斯


83

我会简短但致命。:) install -d不适用于您。这很简单。尝试

$ npm install -g express

3
这也为我解决了这个问题,您能否解释一下express在命令npm install -g中添加什么可能是成功突然改变的原因吗?谢谢!
杰克·史密斯,

@ jake-smith我使用对npm docs的引用以及一些其他示例和解释来更新答案,这将有助于扩大原始答案。
布莱恩(Bryan'BJ)Hoffpauir Jr.

谢谢!从那时起,我已经学到了很多东西,而这个问题让我很尴尬。大声笑。
杰克史密斯

1
好吧,经过进一步的审查,看来我的编辑尚未经过同行评审,因此我的添加内容不可见。@ Zoe-Marmara您是否在自己的队列中看到它?
Bryan'BJ'Hoffpauir Jr.

@ Bryan'BJ'Hoffpauir也许您应该将其添加为评论或答案。您的修改被拒绝。不过,这是一项相当大的努力,非常感谢您的宝贵时间。:)
佐伊·马尔马拉


16

如果在这里谷歌搜索“没有这样的文件或目录package.json”发送给您,则您可能使用的是非常旧的Node.js版本

以下页面提供了有关如何轻松地在许多操作系统和发行版上安装最新稳定版的良好说明:

https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager


使用node --version0.10.31,并有此问题。降级至0.10.29,但仍未解决。Windows安装程序似乎已出现问题,因为它们也已停止创建该C:\Users\User\AppData\Roaming\npm文件夹。
肖恩·所罗门

8
我在Angular.js教程上尝试运行“ npm install”时遇到“没有这样的文件或目录package.json”错误,并在此处结束。在说明中并不需要将cd插入到该教程的已签出代码中-在这种情况下,package.json在上一步中从git克隆的目录中(docs.angularjs.org/tutorial
凯文·胡克2014年

@KevinHooke的解决方案是此问题的答案。从克隆的应用程序目录运行npm -install解决了该问题。
维克拉姆

8

使用win7 / win8 / win10(CD)中的命令移动文件夹:

  1. 输入您的项目文件夹

  2. 跑: npm install -d


5

初学者通常在随机位置尝试npm命令。下载或创建项目后,您必须进入该项目文件夹。里面是文件package.json。

cd <path_to_project>
npm install

3

尝试重新安装Node.js

curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -

sudo apt-get install -y nodejs

sudo apt-get install -y build-essential

并更新npm

curl -L https://npmjs.com/install.sh | sudo sh

3

Node安装了npm,因此您应该具有npm版本。但是,npm的更新频率比Node的更新频率高,因此,您需要确保它是最新版本。

sudo npm install npm -g

测试:

npm -v //The version should be higher than 2.1.8

之后,您应该可以运行:

npm install

2

我对npm也有类似的问题。问题是我有两个相同名称的文件夹中的项目。我通过将其中一个文件夹重命名为其他文件夹(建议使用外部文件夹)来解决该问题。


2

它本身说这package.json在您的项目中不可用。因此,要创建package.json,请使用以下步骤:

  1. 在项目目录上打开命令提示符
  2. npm init (它会要求您输入很多条目,例如名称,版本,desc等,输入一些随机值,然后单击Enter)。
  3. 输入yes并点击输入

现在再试一次。




1

谢谢!我也为此尝试了许多选择。我也在使用Windows,此命令帮助并节省了时间:

npm install -g npm@lts

1

这可能非常明显,
但是请尝试package.json文件所在的项目文件夹中启动CMD(对于Windows)。

不要CMD从系统或Win中的“搜索栏” 启动,也不要在命令的
帮助下移至项目文件夹cd,然后启动npm start


1

好的,尝试转到首页“ user @ user:〜$”(cd + Enter键),然后npm install -g your_module。


1

进入项目文件夹并检查package.json文件是否存在。

如果要使用Visual Studio Angular项目创建项目,请确保在ClientApp文件夹中运行此命令。这是一个很好的机会,您可能正在ClientApp文件夹之外寻找project.json文件。


这只是发生在我身上。我想回答,但既然您已经有了,请接受我的支持:p
Aimal Khan

1

如果项目目录中缺少package.json文件,则可以通过npm init创建它 。

如果package.json文件已经在项目目录中创建,则可能是您没有从正确的路径运行项目。在终端中使用cdyour-project-path,然后从那里运行您的项目。


0

对于以下命令

sudo npm install react browserify watchify babelify --save-dev

我有同样的错误

saveError ENOENT:没有此类文件或目录,请打开“ /Users/Path/package.json”

但是当我运行命令时

sudo npm install -gd react browserify watchify babelify --save-dev

则没有丢失的文件或目录消息出现。


0

我已经npm install -y跳过了创建丢失文件的步骤package.jsony意思是



0

只需安装您想要的任何软件包 -g

npm install -g express


0

请检查安装新软件包的目录或文件夹。这也发生在我身上,我的整个项目都在一个子目录中,而我试图安装在主目录中。检查完所有内容后,我发现必须将其安装在项目文件和package.json文件所在的子目录中,并且已经完成。希望这可以帮助...


-1

生成package.json而不询问任何问题。我在Mac和Windows中要创建package.json的目录下运行以下注释,它可以正常工作

$ npm init -y

Wrote to C:\workspace\package.json:

{
  "name": "workspace",
  "version": "1.0.0",
  "description": "",
  "main": "builder.js",
  "dependencies": {
    "jasmine-spec-reporter": "^4.2.1",
    "selenium-webdriver": "^4.0.0-alpha.5"
  },
  "devDependencies": {},
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}

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.