nodejs版本控制nvm
上次电脑坏了之后,重装了系统,C盘的东西全部都没了,一年多随手写的笔记放在桌面方便查阅,全部丢了,心好痛。自己踩过的坑,留下的记录全没了。我以后一定要把笔记也备份一份。
打oppo vivo的小游戏包的时候,要安装nodejs环境。我装了最新版本12.14.0,vivo是没有啥问题,但是打oppo包的时候报错了。
Error: rpk包构建失败!错误:Error: Command failed: node C:\CocosCreator_2.0.10\resources\builtin\oppo-runtime\quickgame-toolkit\lib\bin\index cocoscreator release
fs.js:27
const { Math, Object } = primordials;
^
ReferenceError: primordials is not defined
在论坛搜了下问题,说是nodejs版本太高了,需要降版本。
oppo的要求是nodejs版本8.1.4 +,话说12.14.0不是8.1.4+吗?尝试一下降版本吧。
npm官网上也有nodejs版本控制的东西,https://nodejs.org/zh-cn/download/package-manager/
随便百度下发现都是用的nvm控制nodejs版本,于是就想试试这个。在github上下载最新的安装包:https://github.com/coreybutler/nvm-windows/releases
安装就傻瓜式安装了。装好之后 cmd 一下nvm,确认安装成功。
接下来看一下现在的nodejs安装列表。
nvm ls
一开始是只有一个12.14.0的版本的,8.9.0是后来安装的。
安装新版本 nvm install 8.9.0
回车之后就回看到已经开始安装了,安装nodejs的过程挺快的,但是也会安装对应的npm版本,8.9.0对应的npm版本为5.5.1,也会一起安装,npm的安装时间比较长,耐心等待就行了。
安装好了之后再输入 nvm ls ,就可以看到当前设备的nodejs所有版本。
切换nodejs版本 nvm -use 8.9.0
此时再查找 npm -v 和 node -v 就可以看到版本号发生了改变。
如果不需要某个版本的nodejs了,也可以卸载掉 nvm uninstall 8.9.0
从12.14.0切换到8.9.0。 果然,oppo再从新打包rpk就没有报错了。以后再遇到nodejs版本冲突问题,就可以很快的切换nodejs的版本了。