ENOENT: нет такого файла или каталога, откройте '/tmp/build_01409f5f7cae8788b3a2ccca28c521d8/client/package.json' - PullRequest
0 голосов
/ 27 мая 2020

Я пытаюсь сделать производственную сборку на Heroku проекта React курса udemy. Я пробовал так много вещей, чтобы заставить его работать, но я полностью в растерянности.

Результат процесса сборки Heroku:

-----> Node.js обнаружено приложение

-----> Создание среды выполнения

   NPM_CONFIG_LOGLEVEL=error
   NODE_ENV=production
   NODE_MODULES_CACHE=true
   NODE_VERBOSE=false

-----> Установка двоичных файлов engine.node (package. json): 12.17.0 Engine. npm (package. json): 6.14.5

   Resolving node version 12.17.0...
   Downloading and installing node 12.17.0...
   Bootstrapping npm 6.14.5 (replacing 6.14.4)...
   npm 6.14.5 installed

-----> Восстановление кеша Кэшированные каталоги не были восстановлены из-за изменения версии узла, npm , yarn или stack Установка модуля может занять больше времени для этой сборки

-----> Установка зависимостей Установка узловых модулей (package. json)

   > nodemon@2.0.4 postinstall /tmp/build_01409f5f7cae8788b3a2ccca28c521d8/node_modules/nodemon
   > node bin/postinstall || exit 0

   Love nodemon? You can now support the project via the open collective:
    > https://opencollective.com/nodemon/donate

   added 267 packages from 183 contributors and audited 268 packages in 11.725s

   12 packages are looking for funding
     run `npm fund` for details

   found 0 vulnerabilities

----- > Сборка Выполняется heroku-postbuild

   > server@1.0.0 heroku-postbuild /tmp/build_01409f5f7cae8788b3a2ccca28c521d8
   > NPM_CONFIG_PRODUCTION=false npm install --prefix client && npm run build --prefix client

   up to date in 0.618s
   found 0 vulnerabilities
    npm ERR! code ENOENT npm ERR! syscall open npm ERR! path /tmp/build_01409f5f7cae8788b3a2ccca28c521d8/client/package.json npm

ERR! errno -2 npm ERR! enoent ENOENT: нет такого файла или каталога, откройте '/tmp/build_01409f5f7cae8788b3a2ccca28c521d8/client/package.json' npm ERR! enoent Это связано с тем, что npm не может найти файл. npm ОШИБКА! enoent npm ERR! Полный журнал этого запуска можно найти в: npm ERR! /tmp/npmcache.h4E00/_logs/2020-05-27T18_18_35_286Z-debug.log npm ERR! код ELIFECYCLE npm ERR! errno 254 npm ERR! server@1.0.0 heroku-postbuild: NPM_CONFIG_PRODUCTION=false npm install --prefix client && npm run build --prefix client npm ERR! Статус выхода 254 npm ERR! npm ОШИБКА! Ошибка при выполнении сценария server@1.0.0 heroku-postbuild. npm ОШИБКА! Вероятно, это не проблема npm. Вероятно, выше есть дополнительный вывод журнала. npm ОШИБКА! Полный журнал этого запуска можно найти в: npm ERR!
/tmp/npmcache.h4E00/_logs/2020-05-27T18_18_35_303Z-debug.log -----> Ошибка сборки

   We're sorry this build is failing! You can troubleshoot common issues here:
   https://devcenter.heroku.com/articles/troubleshooting-node-deploys

   If you're stuck, please submit a ticket so we can help:
   https://help.heroku.com/

   Love,
   Heroku
     !     Push rejected, failed to compile Node.js app.  !     Push failed

Из индекса сервера. js:

if (process.env.NODE_ENV === 'production') {
  // Express will serve production assets
  app.use(express.static('client/build'));

  // Express will serve index.html file if it doesn't recognise the route
  const path = require('path');
  app.get('*', (req, res) => {
    res.sendFile(path.resolve(__dirname, 'client', 'build', "index.html"));
  });
}

Пакет сервера. json:

{
    "name": "server",
    "version": "1.0.0",
    "description": "",
    "main": "index.js",
    "engines": {
        "node": "12.17.0",
        "npm": "6.14.5"
    },
    "scripts": {
        "start": "node index.js",
        "server": "nodemon index.js",
        "client": "npm run start --prefix client",
        "dev": "concurrently \"npm run server\" \"npm run client\"",
        "heroku-postbuild": "NPM_CONFIG_PRODUCTION=false npm install --prefix client && npm run build --prefix client"
    },
    "author": "",
    "license": "ISC",
    "dependencies": {
        "body-parser": "^1.19.0",
        "concurrently": "^5.2.0",
        "cookie-session": "^1.4.0",
        "express": "^4.17.1",
        "mongoose": "^5.9.15",
        "nodemon": "^2.0.4",
        "passport": "^0.4.1",
        "passport-google-oauth20": "^2.0.0",
        "stripe": "^8.55.0"
    }
}

.gitignore:

node_modules
dev.js

1 Ответ

0 голосов
/ 28 мая 2020

Оказывается, поскольку я не удалил файл. git, созданный с помощью create-response-app в моем каталоге / client, это остановило репозиторий / server, включая файлы интерфейса. Так что просто пришлось удалить это и повторно инициализировать репозиторий / server git.

...