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