以 sudo 用户身份安装软件包时的 npm 错误消息



我正在尝试通过node(nodejs)中的npm安装express。我是用户"kev",这个用户是 sudo。我无法使用 sudo 命令来安装任何东西,因为当我出于某种奇怪的原因"sudo npm"时,它根本找不到 npm。我尝试添加符号链接,但 sudo'ing 仍然拒绝找到 npm。因此,以标准用户身份运行并尝试使用 npm 安装 express,我收到以下错误:

kev@tentimes:~$ npm install express
npm WARN saveError ENOENT: no such file or directory, open '/home/kev/package.json'
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN enoent ENOENT: no such file or directory, open '/home/kev/package.json'
npm WARN kev No description
npm WARN kev No repository field.
npm WARN kev No README data
npm WARN kev No license field.

我不知道这些错误是什么意思,除了在我看来这可能是由于我没有升级到 sudo 以使用 nvm 安装。有人有什么建议吗?这是我第一次使用 node/nvm 安装 express,我正在遵循一些关于如何执行此操作的最新指南,但指南只是说使用"nvm install express",这应该可以工作。顺便说一句,我有 git 设置,但这就是它抱怨存储库的原因吗?

NPM 是一个包管理器,顾名思义,它适用于包。包基本上是一个文件夹或存储库,其中包含一个package.json文件,其中包含有关包的各种元数据。此文件丢失,因为错误告诉您:

ENOENT: no such file or directory, open '/home/kev/package.json'

没关系,无论如何它都应该安装软件包,检查./node_modules文件夹。但是,建议您自己使用 npm init 初始化 nodejs 包,这将询问您有关要编写的包的几个问题。之后,npm install --save express安装express并将依赖项保存在您自己的package.json文件中,以便下次您可以npm install,npm 将很乐意安装您自己的package.json文件中列出的所有依赖项。

以下是有关 package.json 是什么以及它包含哪些信息的更多文档:https://docs.npmjs.com/files/package.json

最新更新