intro
起因是hexo@3.8.0与手动安装的node16.x.x不兼容,导致hexo d的时侯出现一个mode type报错
solution
与hexo@3.8.0兼容的node是12.14.0,参考 [1]
所以把node降版本或者hexo升版本即可,参考 [2]
测试发现hexo升版本还是存在问题,hexo@7.3.0与node18.20.5不兼容
坑点:
- 必须用兼容的node去装hexo,如果用高版本node装低版本hexo,再切回低版本node,此时依然不兼容且卸载时容易出问题。所以需要在高版本node安装,高版本node卸载,再换回低版本
- 在项目内安装hexo的时侯先把旧的
packages-lock.json
和node_modules
删掉,然后用npm install hexo@3.9.0 --save
,其中–save不能少,不然不会修改本项目里的packages.json,之后使用的时候用npx hexo clean
去启动 - 想全局安装hexo的话,
npm install -g hexo@3.9.0
一些用到的命令:
- nvm安装,卸载和切换
1 | nvm install 12.14.0 |
- npm安装hexo
1 | npm install hexo@3.9.0 --save |