错误:找不到模块“@heroku/buildpack-registry”

moi*_*nia 6 heroku mongodb node.js express

我正在尝试在 Heroku 上部署一个 Web 应用程序。我收到以下错误, Error: Cannot find module '@heroku/buildpack-registry' 我尝试添加我正在使用的节点版本,但仍然没有帮助。我也用npm i heroku@7.59.0这个升级了 Heroku 也没有帮助。对此有什么想法吗?

这是我的 package.json

{"name":"gssrDB",
  "engines": {
    "node": "14.18.0"
  }
  ,
  "scripts": {
    "dev": "nodemon index.js",
    "start": "node index.js"
  },
  "dependencies": {
    "@heroku-cli/plugin-buildpacks": "^7.54.0",
    "@heroku/buildpack-registry": "^1.0.1",
    "async-file": "^2.0.2",
    "cli-ux": "^4.9.3",
    "dotenv": "^9.0.2",
    "ejs": "^3.1.6",
    "ejs-mate": "^3.0.0",
    "express": "^4.17.1",
    "got": "^8.3.2",
    "heroku": "^7.59.0",
    "mongodb": "^3.6.6",
    "mongoose": "^5.12.9",
    "nodemon": "^2.0.13",
    "phoenix": "^1.6.0"
  }
}

Run Code Online (Sandbox Code Playgroud)

小智 21

我在终端中这样解决了

$ heroku plugins:install buildpack-registry
$ heroku plugins:install buildpacks  
Run Code Online (Sandbox Code Playgroud)

可能有效


moi*_*nia 0

有两件事有助于解决这个问题:

  1. 更新heroku CLI
    npm install -g heroku
    
    Run Code Online (Sandbox Code Playgroud)
  2. 使用当前安装的节点和 npm 版本在 package.json 中添加引擎
    "node": "14.18.0",
    "npm": "7.6.3"
    } 
    
    Run Code Online (Sandbox Code Playgroud)