我有一个Node.js项目,该项目具有多个依赖项。
我创建了package.json文件(npm init
)
并尝试安装所有相关软件包
(npm install all
或(npm install
)
使用npm install
,我得到以下结果:
npm notice created a lockfile as package-lock.json. You should commit this file.
但是
尝试运行时,出现错误,提示缺少软件包(即express
,我需要手动安装)
是否有一种方法(命令)(一个命令)立即安装所有相关的软件包和依赖项? (而不是手动安装每个软件包)?
答案 0 :(得分:0)
我想我找到了解决您问题的方法,您可以使用this npm模块自动安装依赖项。
安装
npm install -g auto-install
用法
在您正在使用的目录中运行auto-install
。
您可以使用npm install package-name
或
您可以使用npm install
安装所有文件,这将读取package.json文件并安装其中的所有软件包。
此外,您可以执行以下操作:
npm install package1 package2 package
安装多个软件包。
答案 1 :(得分:-1)
如果未安装必需的依赖项,只需使用npm的--save
参数手动将其安装一次,它将自动将该依赖项添加到package.json中。
例如,如果缺少express
依赖项,请运行:
npm install --save express
这将在您的node_modules文件夹中安装依赖项,并自动更新package.json文件以包含express
。在随后在不同计算机上进行安装时,您现在只需运行npm install
,express
软件包将自动添加。
使用更多上下文进行更新:在Node中,package.json文件定义了项目所需的所有依赖项。但是,这些依赖项不是为您自动生成的。 npm init
将创建样板package.json,但不会不用任何依赖项填充该package.json。
您需要自己定义依赖关系,可以通过以下两种方式之一进行操作:
dependencies
部分npm install --save <package name>
让npm安装软件包并自动将该软件包作为依赖项保存在package.json文件中如果您不熟悉package.json文件,我建议您坚持使用方法2,以便npm为您处理该文件。
一旦有了具有所有所需依赖项的package.json,那么当您将项目下拉至新计算机时,您将能够使用简单的npm install
命令立即自动安装所有依赖项。您可以通过删除node_modules文件夹并运行npm install
,然后尝试运行您的项目,在自己的计算机上进行测试。如果运行正常,则您已成功将所有依赖项添加到package.json。如果它抱怨缺少软件包,请使用npm install --save <package>