我有一个要在Heroku上托管的Node项目。我在package.json(位于根目录中)中明确定义了node和npm版本,如下所示:
{
"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
我的案子有什么解决办法吗?还是谢谢你
答案 0 :(得分:0)
这已正确记录在Heroku Dev Center中。
如您所见,构建日志显示未指定节点版本。
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.
如果发布完整的构建日志,则可能发现更多内容。