尽管我有 Heroku 在构建期间找不到 package.json

Posted

技术标签:

【中文标题】尽管我有 Heroku 在构建期间找不到 package.json【英文标题】:Heroku can't find package.json during build although I have it 【发布时间】:2018-05-30 16:11:45 【问题描述】:

当我将我的节点应用推送到 heroku master 时,我得到了这个日志

remote: Building source:
remote:
remote: -----> App not compatible with buildpack: https://codon-
buildpacks.s3.amazonaws.com/buildpacks/heroku/nodejs.tgz
remote:        Node.js: package.json not found in application root

我找不到发生这种情况的原因,因为我清楚地在我的根目录中。我使用 git ls-files 进行了检查,它出现了。

我的应用程序根目录是否可能与我的存储库根目录不同?怎么配置呢?

【问题讨论】:

您的package.json 的名称是否准确,包括大小写? 是的,完全一样。 有什么办法可以搜索到问题吗? 您愿意分享您的代码仓库网址吗? 【参考方案1】:

似乎当我推送到 heroku master 时,heroku 将本地存储库的主分支推送到 heroku,而不是我当前所在的分支。所以我要做的就是推送:

git push heroku mybranchname:master

这样我的分支(不是主分支)就会被推送

【讨论】:

我所有的代码都不在根目录下。实际上,它们在一个目录中。如何告诉 Heroku 在此文件夹中搜索 package.json 而不是在 repo 的根目录中搜索? 我想这可能会对你有所帮助***.com/questions/27519313/…【参考方案2】:

一个常见的问题是没有将文件添加到 git。

您可能在设备的根目录中有 package.json,但没有将其添加到 git,heroku 无法找到它。

如果尚未添加,请检查状态以确认并添加

git status git add .

然后是通常的 git push heroku master 假设您在主分支上。 希望这会有所帮助。

【讨论】:

【参考方案3】:

我认为只是推动一个分支而不是主人应该修复它。如果您没有分支,我建议您创建一个并使用它进行推送。

【讨论】:

以上是关于尽管我有 Heroku 在构建期间找不到 package.json的主要内容,如果未能解决你的问题,请参考以下文章

Heroku - 构建错误 - 找不到模块请求

Heroku 构建依赖项安装失败

UnhandledPromiseRejectionWarning:错误:找不到模块“tailwindcss”heroku 错误

heroku错误:找不到或加载主类

部署到 Heroku 错误:找不到模块“/app/server.js”

Heroku:错误:找不到模块 node-gyp