强制安装npm软件包依赖项不起作用

时间:2018-08-30 21:01:34

标签: javascript npm

我的最终目标是安装npm audit,而我的一般目标是了解如何强制安装npm软件包依赖项。 我开始这条路是因为运行npm install request@latest指向qs时会遇到高风险错误。当我运行npm install qs@latestnpm audit时,没有任何错误。这样做之后,npm list qs不能反映预期的结果,即sudo npm install qs 建议将qs更新到最新版本。

命令1:

npm WARN grunt-html-validation@0.1.18 requires a peer of grunt@~0.4.1 but none is installed. You must install peer dependencies yourself.
+ qs@6.5.2
added 1 package from 1 contributor, updated 1 package and audited 623 packages in 4.014s
found 19 vulnerabilities (3 low, 10 moderate, 6 high)

获得:

sudo npm install request@latest

命令2:

+ request@2.88.0
updated 1 package in 2.584s

获得:

npm list qs

命令3:

grunt-html-validation@0.1.18
|
request@2.34.0
|
qs@0.6.6 

获得:

gs@0.6.6

我的疑难解答中的发现/问题: -为什么@my_project/node_modules/request/node_modules/qs不更新?它在依赖关系链的末尾。我去了@my_project/node_modules/request/package.json/dependencies/qs,但没有帮助。然后,我将~3.1.0更新为@my_project/node_modules/request/node_modules/qs/package.json,只是看它是否会更新npm list qs的结果。尽管3.1.0反映了版本request@2.34.0,但没有。我也使用过npm cache clean几次 -为什么 Command#1 没有更新我的依赖项链中的npm install grunt-html-validation

我也在npm WARN deprecated node-uuid@1.4.8: Use uuid module instead npm WARN deprecated hoek@0.9.1: The major version is no longer supported. Please update to 4.x or newer npm WARN grunt-html-validation@0.1.18 requires a peer of grunt@~0.4.1 but none is installed. You must install peer dependencies yourself. 上收到这些警告:

editText0

1 个答案:

答案 0 :(得分:1)

已解决:显然,问题在于节点模块存储在我的项目目录中的节点模块中,并且它们分为两层,如下所示: grunt-html-validation =>请求=> qs 和 请求=> qs

我必须将两个“ request”文件夹的package.json文件修改为一个版本|做npm缓存清理,最后更新版本。