MERN 应用程序解聚到 Heroku - 找不到 package.json

时间:2021-05-30 17:42:46

标签: node.js reactjs git heroku npm

我正在尝试使用 Heroku CLI 在线获取 MERN 应用程序。该应用程序在本地运行良好,但是当我尝试使用 git 将应用程序推送到 Heroku 时,我收到以下错误消息:

remote:        Running heroku-postbuild
remote:        
remote:        > exercise-logger@1.0.0 heroku-postbuild /tmp/build_431a136c
remote:        > NPM_CONFIG_PRODUCTION=false npm install --prefix exercise-logger && npm run build --prefix exercise-logger
remote:        
remote:        up to date in 0.22s
remote:        found 0 vulnerabilities
remote:        
remote: npm ERR! code ENOENT
remote: npm ERR! syscall open
remote: npm ERR! path /tmp/build_431a136c/exercise-logger/package.json
remote: npm ERR! errno -2
remote: npm ERR! enoent ENOENT: no such file or directory, open '/tmp/build_431a136c/exercise-logger/package.json'
remote: npm ERR! enoent This is related to npm not being able to find a file.
remote: npm ERR! enoent 
remote: 
remote: npm ERR! A complete log of this run can be found in:
remote: npm ERR!     /tmp/npmcache.yesMz/_logs/2021-05-30T17_32_30_947Z-debug.log
remote: npm ERR! code ELIFECYCLE
remote: npm ERR! errno 254
remote: npm ERR! exercise-logger@1.0.0 heroku-postbuild: `NPM_CONFIG_PRODUCTION=false npm install --prefix exercise-logger && npm run build --prefix exercise-logger`
remote: npm ERR! Exit status 254
remote: npm ERR! 
remote: npm ERR! Failed at the exercise-logger@1.0.0 heroku-postbuild script.
remote: npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
remote: 
remote: npm ERR! A complete log of this run can be found in:
remote: npm ERR!     /tmp/npmcache.yesMz/_logs/2021-05-30T17_32_30_973Z-debug.log
remote: 
remote: -----> Build failed
remote:        
remote:        We're sorry this build is failing! You can troubleshoot common issues here:
remote:        https://devcenter.heroku.com/articles/troubleshooting-node-deploys
remote:        
remote:        Some possible problems:
remote:        
remote:        - node_modules checked into source control
remote:          https://devcenter.heroku.com/articles/node-best-practices#only-git-the-important-bits
remote:        
remote:        Love,
remote:        Heroku
remote:        
remote:  !     Push rejected, failed to compile Node.js app.
remote: 
remote:  !     Push failed
remote:  !

它的重点似乎是找不到根 package.json 文件,即使它肯定存在。事实上,它是:

"name": "exercise-logger",
  "version": "1.0.0",
  "description": "",
  "main": "server.js",
  "dependencies": {
    "axios": "^0.21.1",
    "bcrypt": "^5.0.1",
    "concurrently": "^6.0.2",
    "config": "^3.3.6",
    "cors": "^2.8.5",
    "express": "^4.17.1",
    "express-validator": "^6.10.0",
    "jsonwebtoken": "^8.5.1",
    "mongoose": "^5.12.3"
  },
  "devDependencies": {},
  "scripts": {
    "start": "node server.js",
    "build": "cd client && npm run build",
    "server": "nodemon server.js",
    "client": "npm start --prefix client",
    "clientinstall": "npm install --prefix client",
    "dev": "concurrently \"npm run start\" \"npm run client\"",
    "heroku-postbuild": "NPM_CONFIG_PRODUCTION=false npm install --prefix client && npm run build --prefix client"
  },
  "engines": {
    "node": "14.x",
    "npm": "6.x"
  },
  "author": "",
  "license": "ISC"
}

我尝试了一个看似常见的修复方法,即手动删除 React 应用程序目录中的 .git 文件夹,但似乎没有修复它。

整个代码都在 Github here 上。

有人可以帮忙吗?我已经在这个项目上工作了很长一段时间,所以像这样陷入最后的障碍真的很令人沮丧。我以前从未真正做过这样的事情,所以不确定从哪里开始进行故障排除!

谢谢

0 个答案:

没有答案
相关问题