我 git 克隆了一个 Node.js 应用程序(在 package.json
中指定的版本是 4.1.2
并且我的本地机器的版本是 6.2.2
)赫罗库。但它未能构建并给出此错误:
无法检测到 set buildpack https://codon-buildpacks.s3.amazonaws.com/buildpacks/heroku/nodejs.tgz
现在我将 buildpack 设置为 heroku/nodejs 并收到以下消息:
Buildpack set. Next release on lit-badlands-92088 will use heroku/nodejs.
Run git push heroku master to create a new release using this buildpack.
现在,当我运行 git push heroku master
时,我再次被告知:
remote: -----> Failed to detect set buildpack
https://codon-buildpacks.s3.amazonaws.com/buildpacks/heroku/nodejs.tgz
remote: More info:
https://devcenter.heroku.com/articles/buildpacks#detection-failure
remote:
remote: ! Push failed
remote: Verifying deploy...
remote:
remote: ! Push rejected to lit-badlands-92088.
即使我设置了 Node.js buildpack 也没有被检测到,可能的原因是什么?
原文由 Shree 发布,翻译遵循 CC BY-SA 4.0 许可协议
这意味着
package.json
文件未检入您的 git 项目的根目录中,因此 Heroku 检测到它不是 Node.js 应用程序。你可以在本地看到这个:要修复它,您需要确保项目的根目录中有一个 package.json(其中还有一个 .git 目录),并将其添加到 git:
措辞(’未能检测到集合 buildpack’)可以改进。它可能应该说“未能检测到 Node.js 应用程序”。当 buildpack 的“检测”脚本运行时( https://github.com/heroku/heroku-buildpack-nodejs/blob/master/bin/detect ),它会寻找一个 package.json 文件来验证是否有一个节点应用程序可用于构建。