Сбой сборки Gatsby при развертывании в Netlify

#reactjs #gatsby #netlify

#reactjs #gatsby #netlify

Вопрос:

В настоящее время я пытаюсь просмотреть свой сайт в промежуточной среде, поэтому я нажимаю из промежуточной ветки. Не мастер.

Он полностью находит локально. При нажатии на Netlify происходит сбой.

Ошибка, которую я получаю ниже:

 3:31:59 PM: ────────────────────────────────────────────────────────────────
3:31:59 PM:   1. Build command from Netlify app                             
3:31:59 PM: ────────────────────────────────────────────────────────────────
3:31:59 PM: ​
3:31:59 PM: $ gatsby build
3:31:59 PM: bash: gatsby: command not found
3:31:59 PM: ​
3:31:59 PM: ────────────────────────────────────────────────────────────────
3:31:59 PM:   "build.command" failed                                        
3:31:59 PM: ────────────────────────────────────────────────────────────────
3:31:59 PM: ​
3:31:59 PM:   Error message
3:31:59 PM:   Command failed with exit code 127: gatsby build
3:31:59 PM: ​
3:31:59 PM:   Error location
3:31:59 PM:   In Build command from Netlify app:
3:31:59 PM:   gatsby build
3:31:59 PM: ​
3:31:59 PM:   Resolved config
3:31:59 PM:   build:
3:31:59 PM:     command: gatsby build
3:31:59 PM:     commandOrigin: ui
3:31:59 PM:     publish: /opt/build/repo/dist
3:31:59 PM: Caching artifacts
3:31:59 PM: Started saving node modules
3:31:59 PM: Finished saving node modules
3:31:59 PM: Started saving build plugins
3:31:59 PM: Finished saving build plugins
3:31:59 PM: Started saving yarn cache
3:31:59 PM: Finished saving yarn cache
3:31:59 PM: Started saving pip cache
3:31:59 PM: Finished saving pip cache
3:31:59 PM: Started saving emacs cask dependencies
3:31:59 PM: Finished saving emacs cask dependencies
3:31:59 PM: Started saving maven dependencies
3:31:59 PM: Finished saving maven dependencies
3:31:59 PM: Started saving boot dependencies
3:31:59 PM: Finished saving boot dependencies
3:31:59 PM: Started saving go dependencies
3:32:01 PM: Finished saving go dependencies
3:32:04 PM: Build failed due to a user error: Build script returned non-zero exit code: 2
3:32:04 PM: Failing build: Failed to build site
3:32:04 PM: Failed during stage 'building site': Build script returned non-zero exit code: 2
3:32:04 PM: Finished processing build request in 1m17.166375156s
 

Ответ №1:

Ошибка, которую вы получаете, заключается в том, что gatsby CLI недоступен.

bash: gatsby: команда не найдена

  1. Проверьте, что у вас есть gatsby в ваших зависимостях в package.json. Обратите внимание, что вместо этого он не может быть в ваших devDependencies.
  2. Над показанным сообщением об ошибке вы должны увидеть, как Netlify выбирает либо Yarn, либо NPM и устанавливает зависимости соответствующим образом. Если этого не произойдет, возможно, вы забыли включить package-lock.json или yarn.заблокируйте свой репозиторий (например, он может быть в .gitignore).
  3. Чтобы избежать подобных проблем в будущем, добавьте скрипт «build» в свой package.json и переключите команду сборки на Netlify, чтобы использовать ее (например yarn build , или npm run build ). Это гарантирует, что вы используете исполняемый файл, включенный в node_modules, вместо глобально доступного инструмента.