npm版本升级备忘

本次总结 :升级npm版本时,需要将npm的源切换到官方源。
本次总结 :npm版本升级后,可能需要进行node的升级

在使用npm install项目时报下方错误

npm WARN read-shrinkwrap This version of npm is compatible with lockfileVersion@
1, but package-lock.json was generated for lockfileVersion@2. I'll try to do my
best with it!
npm ERR! Unexpected token < in JSON at position 16 while parsing near '
npm ERR!
npm ERR!
npm ERR!
npm ERR!
npm ERR!
npm ERR!
npm ERR!
npm ERR! <!DOCTYPE html>
npm ERR! <ht...'

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\LJQ\AppData\Roaming\npm-cache\_logs\2022-08-14T03_27_34_99
5Z-debug.log

从报错上看,应该是需要对npm的版本进行升级
在百度找到npm的升级命令是:npm install -g npm ,但是执行时依然报错

C:\Users\LJQ>npm install -g npm
npm ERR! Unexpected token < in JSON at position 16 while parsing near '
npm ERR!
npm ERR!
npm ERR!
npm ERR!
npm ERR!
npm ERR!
npm ERR!
npm ERR! <!DOCTYPE html>
npm ERR! <ht...'

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\LJQ\AppData\Roaming\npm-cache\_logs\2022-08-14T03_28_53_56
6Z-debug.log

这下就有点不知所措了,最后多查了下资料,有人发现需要把npm的源切换为npm官方源才能正常升级。

于是先进行源的设置

npm config set registry https://registry.npmjs.org/

然后再进行升级,最后升级成功!

C:\Users\LJQ>npm install -g npm
C:\Users\LJQ\application\nodejs\node_cache\npm -> C:\Users\LJQ\application\nodej
s\node_cache\node_modules\npm\bin\npm-cli.js
C:\Users\LJQ\application\nodejs\node_cache\npx -> C:\Users\LJQ\application\nodej
s\node_cache\node_modules\npm\bin\npx-cli.js
+ npm@8.17.0
added 205 packages from 109 contributors in 79.65s

下一步想将npm的源切会国内的源,但不幸的是发生了下方的报错

C:\Users\LJQ>npm config set registry https://registry.npm.taobao.org
ERROR: npm is known not to run on Node.js v10.16.1
You'll need to upgrade to a newer Node.js version in order to use this
version of npm. You can find the latest version at https://nodejs.org/

看来还需要对nodejs的版本进行升级,不过呢升级过程中也并不顺利,提示nodejs 需要windows8.1以上版本支持,但是我的版本是windows8。这个时候就麻烦了,卡在这一步了,后来鼓捣了一会儿还是不行?;灰桓鏊悸?, 升级,但不升级为最新版本,升级为npm依赖的最低版本进行尝试。

更换nodejs为稍低的版本后,npm install成功。紧接着进行 npm run dev运行项目。不幸的是,还是发生了问题:

C:\Users\LJQ\IdeaProjects\fast-admin>npm run dev

> fast-admin@1.0.0 dev C:\Users\LJQ\IdeaProjects\fast-admin
> vite

C:\Users\LJQ\IdeaProjects\fast-admin\node_modules\vite\bin\vite.js:2
import { performance } from 'node:perf_hooks'
^^^^^^

SyntaxError: Cannot use import statement outside a module
?[90m    at Module._compile (internal/modules/cjs/loader.js:892:18)?[39m
?[90m    at Object.Module._extensions..js (internal/modules/cjs/loader.js:973:10
)?[39m
?[90m    at Module.load (internal/modules/cjs/loader.js:812:32)?[39m
?[90m    at Function.Module._load (internal/modules/cjs/loader.js:724:14)?[39m
?[90m    at Function.Module.runMain (internal/modules/cjs/loader.js:1025:10)?[39
m
?[90m    at internal/main/run_main_module.js:17:11?[39m
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! fast-admin@1.0.0 dev: `vite`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the fast-admin@1.0.0 dev script.
npm ERR! This is probably not a problem with npm. There is likely additional log
ging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\LJQ\AppData\Roaming\npm-cache\_logs\2022-08-14T05_12_18_37
0Z-debug.log

其中提示的:SyntaxError: Cannot use import statement outside a module是比较关键的错误信息。再继续百度了解到:

node早先只支持CommonJS的模块化方案,所以ES6的模块化特性用不了。但是在Node V13.2.0之后开始实验性的支持ESM模块化,不过需要创建package.json文件指明type类型为module。

也还是node版本低,无法支持ES6的??榛匦浴R虼?,还是必须提升nodejs的版本。然后再继续升级nodejs版本,向上推测的方式。最后测试的版本是v13.2.0,还是报错

C:\Users\LJQ\IdeaProjects\fast-admin>npm --experimental-modules run dev

> fast-admin@1.0.0 dev C:\Users\LJQ\IdeaProjects\fast-admin
> vite

(node:7380) ExperimentalWarning: The ESM module loader is experimental.
file:///C:/Users/LJQ/IdeaProjects/fast-admin/node_modules/vite/bin/vite.js:7
    await import('source-map-support').then((r) => r.default.install())
    ^^^^^

SyntaxError: Unexpected reserved word
?[90m    at Loader.moduleStrategy (internal/modules/esm/translators.js:84:18)?[
9m
?[90m    at async link (internal/modules/esm/module_job.js:36:21)?[39m
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! fast-admin@1.0.0 dev: `vite`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the fast-admin@1.0.0 dev script.
npm ERR! This is probably not a problem with npm. There is likely additional lo
ging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\LJQ\AppData\Roaming\npm-cache\_logs\2022-08-14T05_35_09_8
3Z-debug.log

看来要支持比较新的前段项目,只能装最新版本的nodejs 了 。只能暂停了,操作系统升级太麻烦。

最后编辑于
?著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,100评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,308评论 3 388
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事?!?“怎么了?”我有些...
    开封第一讲书人阅读 159,718评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,275评论 1 287
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,376评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,454评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,464评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,248评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,686评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,974评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,150评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,817评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,484评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,140评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,374评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,012评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,041评论 2 351

推荐阅读更多精彩内容