Node.js 如何在heroku中指定节点版本
我想在Heroku上托管一个节点项目。我在my package.json(位于根目录)中明确定义了节点和npm版本,如下所示:Node.js 如何在heroku中指定节点版本,node.js,heroku,deployment,Node.js,Heroku,Deployment,我想在Heroku上托管一个节点项目。我在my package.json(位于根目录)中明确定义了节点和npm版本,如下所示: { "name": "*********", "version": "1.0.0", "description": "**********", "engines": { "node": "8.x", "npm": "6.x" }, "private": true, ..... } 但是,当我尝试将应用程序推送到heroku时。它仍然没有读取节点
{
"name": "*********",
"version": "1.0.0",
"description": "**********",
"engines": {
"node": "8.x",
"npm": "6.x"
},
"private": true,
.....
}
但是,当我尝试将应用程序推送到heroku时。它仍然没有读取节点和npm版本
remote: -----> Creating runtime environment
remote:
remote: NPM_CONFIG_LOGLEVEL=error
remote: NODE_ENV=production
remote: NODE_MODULES_CACHE=true
remote: NODE_VERBOSE=false
remote:
remote: -----> Installing binaries
remote: engines.node (package.json): unspecified
remote: engines.npm (package.json): unspecified (use
default)
remote: Resolving node version 10.x...
remote: Downloading and installing node 10.15.3...
remote: Using default npm version: 6.4.1
我的案子有什么解决办法吗?无论如何,谢谢你这已在中正确记录 如您所见,构建日志显示没有指定节点版本 engines.node(package.json):未指定 您的package.json是正确的,但您可能没有将应用程序设置为使用
heroku/nodejs
buildpack
使用此选项检查正在使用的buildpack
$ heroku buildpacks
=== issuetriage Buildpack URLs
1. heroku/nodejs
$ heroku buildpacks:add heroku/nodejs
Buildpack added. Next release on issuetriage will use heroku/nodejs.
Run git push heroku master to create a new release using this buildpack.
如果发布完整的构建日志,则可能会发现更多内容。假设OP仅使用单个构建包,
heroku/nodejs
应该通过package.json
文件自动检测到。构建日志清楚地显示了Node.js输出,所以这不是问题所在。我必须问:您是否完全确定您向我们展示的package.json
就是您推给Heroku的那个?