【问题标题】:"npm install -g yo generator-code" gives wierd errors“npm install -g yo generator-code”给出了奇怪的错误
【发布时间】:2022-02-07 07:52:59
【问题描述】:

我打开 VS Code,然后我显示终端并打开 Powershell,到目前为止一切顺利。该应用程序也以管理员身份启动。然后我输入:

npm install -g yo generator-code

但它失败了。我不确定是什么,这是我第一次使用 npm,但是它不起作用,我知道很多。当我尝试 yo 代码时,它说 yo 无法识别。 上述命令输出以下“错误”:

npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142

changed 869 packages, and audited 870 packages in 1m

59 packages are looking for funding
  run `npm fund` for details

15 vulnerabilities (13 moderate, 2 high)

To address issues that do not require attention, run:
  npm audit fix

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.

我看到了多个关于安装它的教程,但没有一个详细说明如果这样失败该怎么办。但我认为我应该运行 npm audit fix。但是在运行该命令时,它会给出以下输出:

npm ERR! code ENOLOCK
npm ERR! audit This command requires an existing lockfile.
npm ERR! audit Try creating one first with: npm i --package-lock-only
npm ERR! audit Original error: loadVirtual requires existing shrinkwrap file

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\admin\AppData\Local\npm-cache\_logs\2022-02-06T21_40_42_240Z-debug.log

如果有帮助,这里是上面输出中提到的 debug.log 文件的内容:

0 verbose cli [
0 verbose cli   'C:\\Program Files\\nodejs\\node.exe',
0 verbose cli   'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
0 verbose cli   'audit',
0 verbose cli   'fix'
0 verbose cli ]
1 info using npm@8.1.2
2 info using node@v16.13.2
3 timing npm:load:whichnode Completed in 0ms
4 timing config:load:defaults Completed in 2ms
5 timing config:load:file:C:\Program Files\nodejs\node_modules\npm\npmrc Completed in 4ms
6 timing config:load:builtin Completed in 4ms
7 timing config:load:cli Completed in 3ms
8 timing config:load:env Completed in 1ms
9 timing config:load:file:C:\Users\jevar\documents\github\.npmrc Completed in 1ms
10 timing config:load:project Completed in 3ms
11 timing config:load:file:C:\Users\jevar\.npmrc Completed in 0ms
12 timing config:load:user Completed in 0ms
13 timing config:load:file:C:\Users\jevar\AppData\Roaming\npm\etc\npmrc Completed in 1ms
14 timing config:load:global Completed in 1ms
15 timing config:load:validate Completed in 0ms
16 timing config:load:credentials Completed in 1ms
17 timing config:load:setEnvs Completed in 2ms
18 timing config:load Completed in 17ms
19 timing npm:load:configload Completed in 18ms
20 timing npm:load:setTitle Completed in 0ms
21 timing npm:load:setupLog Completed in 0ms
22 timing config:load:flatten Completed in 5ms
23 timing npm:load:cleanupLog Completed in 5ms
24 timing npm:load:configScope Completed in 0ms
25 timing npm:load:projectScope Completed in 0ms
26 timing npm:load Completed in 31ms
27 timing arborist:ctor Completed in 0ms
28 timing command:audit Completed in 6ms
29 verbose stack Error: loadVirtual requires existing shrinkwrap file
29 verbose stack     at Arborist.loadVirtual (C:\Program Files\nodejs\node_modules\npm\node_modules\@npmcli\arborist\lib\arborist\load-virtual.js:62:18)
29 verbose stack     at async Arborist.audit (C:\Program Files\nodejs\node_modules\npm\node_modules\@npmcli\arborist\lib\arborist\audit.js:25:18)
29 verbose stack     at async Audit.audit (C:\Program Files\nodejs\node_modules\npm\lib\audit.js:66:5)
30 verbose cwd C:\Users\jevar\documents\github
31 verbose Windows_NT 10.0.19044
32 verbose argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "audit" "fix"
33 verbose node v16.13.2
34 verbose npm  v8.1.2
35 error code ENOLOCK
36 error audit This command requires an existing lockfile.
37 error audit Try creating one first with: npm i --package-lock-only
38 error audit Original error: loadVirtual requires existing shrinkwrap file
39 verbose exit 1

正如我所说,这是我第一次使用 npm,所以我不知道这是什么,也不知道该怎么做。提前谢谢!

【问题讨论】:

    标签: npm visual-studio-code npm-install


    【解决方案1】:

    看起来我没有生成 package-lock.json 文件。 您是否尝试运行它在那里说的命令?

    npm i --package-lock-only
    

    然后如果一直报错,执行如下命令:

    npm audit fix
    

    如果所有这些都不起作用,我建议您共享项目结构以检查 package-lock.json 文件

    希望对你有所帮助

    【讨论】:

      猜你喜欢
      • 2022-08-03
      • 1970-01-01
      • 2015-04-09
      • 2016-05-04
      • 1970-01-01
      • 2014-01-19
      • 1970-01-01
      • 2016-01-03
      • 1970-01-01
      相关资源
      最近更新 更多