如何升级Heroku上的Node.js版本至16以运行discord.js v13版Discord机器人
Heroku平台升级Node.js版本解决方案
操作步骤
- 在项目根目录的
package.json文件中新增engines配置项,明确指定Node.js版本为16.x,示例配置如下:
{ "name": "discord-bot", "version": "1.0.0", "engines": { "node": "16.x" }, "dependencies": { "discord.js": "^13.17.1" // 其余依赖保持原有配置即可 } }
- 把修改后的
package.json文件,以及本地重新安装依赖后生成的package-lock.json(npm包管理器)或yarn.lock(yarn包管理器)文件一并提交到绑定Heroku应用的代码仓库。 - 触发Heroku自动部署,部署过程中平台会自动识别
engines字段,拉取对应版本的Node.js运行环境安装使用。
验证方法
部署完成后,你可以通过Heroku CLI执行heroku run node -v命令,查看当前应用运行环境的Node.js版本,确认升级是否生效。
常见问题处理
如果部署时出现依赖兼容性报错,可以先删除本地的
node_modules文件夹和旧的锁文件,用本地Node.js 16环境重新执行依赖安装命令生成新的锁文件,再提交部署即可解决。
内容的提问来源于stack exchange,提问作者WhoCutTheCheese
相关产品推荐
相关产品推荐

