Реагировать на сборку приложения Heroku не удалось - мастер git push heroku - Ожидается X, ошибка разбора в строке 1: неожиданный конец ввода. Строка 1 какого файла? - PullRequest
0 голосов
/ 20 января 2019

Я получаю очень запутанную ошибку синтаксического анализа при запуске git push heroku master при попытке создать приложение React в Heroku, которое было успешно создано вчера.С тех пор единственными изменениями были некоторые медиа-запросы, добавленные другим автором в несколько файлов .scss.

Основная ошибка (полный отчет о сборке приведен ниже) гласит: remote: Failed to compile. remote: remote: Parse error on line 1: remote: ^ remote: Expecting "CALC", "LPAREN", "SUB", "NUMBER", "FUNCTION", "LENGTH", "ANGLE", "TIME", "FREQ", "RES", "EMS", "EXS", "CHS", "REMS", "VHS", "VWS", "VMINS", "VMAXS", "PERCENTAGE", "expression", "math_expression", "value", "function", "css_value", got unexpected end of input remote: remote: remote: npm ERR! code ELIFECYCLE remote: npm ERR! errno 1 remote: npm ERR! world-of-flags@0.1.0 build: build-scripts build remote: npm ERR! Exit status 1

Самая запутанная часть этого в том, что я не могу понять, к какому файлу относится эта ошибка, когда написано Parse error on line 1.Основываясь на прочтении этого вопроса о переполнении стека ( мастер git push heroku не работает с ошибкой синтаксического анализа - какой файл? ) я предположил, что ошибка относится к моему файлу package.json.Тем не менее, я не могу найти ничего плохого в этом.Любая помощь по этому вопросу будет принята с благодарностью.

package.json

{
  "name": "world-of-flags",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "dotenv": "^6.2.0",
    "enzyme": "^3.8.0",
    "node-sass": "^4.11.0",
    "prop-types": "^15.6.2",
    "react": "^16.6.3",
    "react-dom": "^16.6.3",
    "react-redux": "^6.0.0",
    "react-router-dom": "^4.3.1",
    "react-scripts": "^2.1.3",
    "redux": "^4.0.1",
    "redux-devtools-extension": "^2.13.7",
    "redux-thunk": "^2.3.0"
  },
  "jest": {
    "collectCoverageFrom": [
      "src/**/*.{js,jsx}",
      "!src/index.js",
      "!src/serviceWorker.js",
      "!src/setupTests.js",
      "!src/history.js",
      "!src/reducers/index.js",
      "!src/mockData/mockData.js",
      "!src/utilities/allCountries.js",
      "!src/utilities/allCountriesImagesObject.js",
      "!src/utilities/allCountriesObjects.js"
    ]
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject",
    "eslint": "./node_modules/eslint/bin/eslint.js ./src/*.js"
  },
  "eslintConfig": {
    "extends": "react-app"
  },
  "browserslist": [
    ">0.2%",
    "not dead",
    "not ie <= 11",
    "not op_mini all"
  ],
  "devDependencies": {
    "enzyme-adapter-react-16": "^1.7.1",
    "jshint": "^2.9.7",
    "prettier": "1.15.3",
    "resolve-url-loader": "^3.0.0"
  },
  "prettier": {
    "trailingComma": "es5",
    "tabWidth": 2,
    "semi": true,
    "singleQuote": true
  }
}

Полный журнал сборки Heroku

-----> React.js (create-react-app) multi app detected
-----> Configure create-react-app build environment
       Using `NODE_ENV=development`
=====> Downloading Buildpack: https://github.com/heroku/heroku-buildpack-multi.git
=====> Detected Framework: Multipack
=====> Downloading Buildpack: https://github.com/heroku/heroku-buildpack-nodejs.git
=====> Detected Framework: Node.js
       
-----> Creating runtime environment
       
       NPM_CONFIG_LOGLEVEL=error
       NPM_CONFIG_PRODUCTION=false
       NODE_ENV=development
       NODE_MODULES_CACHE=true
       NODE_VERBOSE=false
       
-----> Installing binaries
       engines.node (package.json):  unspecified
       engines.npm (package.json):   unspecified (use default)
       
       Resolving node version 10.x...
       Downloading and installing node 10.15.0...
       Using default npm version: 6.4.1
       
-----> Restoring cache
       - node_modules
       
-----> Building dependencies
       Installing node modules (package.json + package-lock)
       added 212 packages from 12 contributors, removed 4 packages, updated 98 packages and audited 36629 packages in 28.481s
       found 0 vulnerabilities
       
       
-----> Caching build
       - node_modules
       
-----> Pruning devDependencies
       Skipping because NODE_ENV is not 'production'
       
-----> Build succeeded!
=====> Downloading Buildpack: https://github.com/mars/create-react-app-inner-buildpack.git
=====> Detected Framework: React.js (create-react-app)
       Writing `static.json` to support create-react-app
       Enabling runtime environment variables
> world-of-flags@0.1.0 build /tmp/build_768ef9fd4678f7cb022271fe96647f94
> react-scripts build
Creating an optimized production build...
Failed to compile.
Parse error on line 1: 
^
Expecting "CALC", "LPAREN", "SUB", "NUMBER", "FUNCTION", "LENGTH", "ANGLE", "TIME", "FREQ", "RES", "EMS", "EXS", "CHS", "REMS", "VHS", "VWS", "VMINS", "VMAXS", "PERCENTAGE", "expression", "math_expression", "value", "function", "css_value", got unexpected end of input
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! world-of-flags@0.1.0 build: `react-scripts build`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the world-of-flags@0.1.0 build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR!     /app/.npm/_logs/2019-01-19T21_04_11_353Z-debug.log
 !     Push rejected, failed to compile React.js (create-react-app) multi app.
 !     Push failed

Ответы [ 2 ]

0 голосов
/ 20 января 2019

Проработав весь день, я наконец смог решить проблему и развернуть приложение в Heroku.Подводя итог, скажу, что большую часть этого было то, как определенные модули узлов были установлены в package.json и на моем компьютере, а именно node-sass, sass-loader и webpack.

Проблемы, с которыми мне пришлось работать через :

  1. Сборка heroku изначально не удалась из-за странных ошибок Parse error on line 1 и unexpected end of input.Это произошло потому, что heroku не распознавал медиа-запросы SASS, которые я недавно добавил в приложение.Когда я комментировал медиазапросы, сборка / развертывание heroku работала, по крайней мере, в соответствии с журналом сборки heroku.

  2. Далее, хотя сборка работала, когда я на самом делепосетив ссылку на развертывание, я получил ошибки консоли, говорящие о том, что мне нужно установить node-sass.Это очень раздражало, потому что в моем файле package.json было node-sass под devDependencies , что, на мой взгляд, было достаточно, но, видимо, вы хотите, чтобы оно было указано в зависимости .Я продолжал пытаться установить node-sass, но развернутый сайт просто не мог его распознать.

Я пытался обойти это, установив webpack, что создавало больше проблем, поскольку с тех порранее установленный веб-пакет глобально, heroku был сбит с толку, потому что у меня были установлены 2 разные версии.Я получил сообщения об ошибках в моей сборке heroku, которые говорили что-то This project requires webpack version 4.19 but a later version 4.28 was found higher up (не точные слова, но я больше не могу найти точное сообщение об ошибке).

Решения :

  1. Удаление node-sass, sass-loader и webpack как в корневой папке проекта, так и в моей главной, папка пользователя на моем компьютере.

  2. Глобально удалить веб-пакет определенной версии (версий), которые я ранее установил глобально.

  3. Подтвердить,используя webpack --version, чтобы в папке проекта или корневой папке главного компьютера не было версий веб-пакета.

  4. Удалите node_modules и package-lock.json как в корневой папке проекта, так и вМоя основная папка пользователя.

  5. Переустановите node-sass и sass-loader.Ранее они отображались в файле package.json в devDependencies , а после выполнения всех вышеперечисленных шагов они затем отображались в зависимости , что и было тем, что я хотел.

  6. Выполнить npm install.После этого сборка / развертывание heroku работала, и я смог просмотреть содержимое по ссылке развертывания.

Надеюсь, это поможет.Удачи!

0 голосов
/ 20 января 2019

Героку хочет построить свой собственный.

Есть buildpacks , которые вы можете установить. Если это приложение CRA ...

Из командной строки: heroku create --buildpack https://github.com/mars/create-react-app-buildpack.git

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...