Windows 10, 'expo build: android \ завершается с ошибкой "Ошибка: spawn / bin / cp ENOENT" - PullRequest
0 голосов
/ 26 апреля 2020

После нескольких часов борьбы с этой проблемой я наконец нашел обходной путь. Публикация здесь, так что это может помочь кому-то, пока проблема не будет решена.

При запуске expo build:android или expo publish task fini sh с ошибкой:

The system cannot find the path specified.
[00:46:48] spawn /bin/cp ENOENT
[00:46:48] **Error: spawn /bin/cp ENOENT**
    at notFoundError (..\expo-cli\node_modules\cross-spawn\lib\enoent.js:11:11)
    at verifyENOENT (..s\expo-cli\node_modules\cross-spawn\lib\enoent.js:46:16)
    at ChildProcess.cp.emit (...s\expo-cli\node_modules\cross-spawn\lib\enoent.js:33:19)
     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
error Command failed with exit code 1.

Относится к expo-cli проблемы:

Предлагаемое решение для запуска git bash не работал, я также хотел избежать установки узла и всех других npm пакетов на WSL.

expo diagnostics

  Expo CLI 3.18.6 environment info:
    System:
      OS: Windows 10 10.0.18363
    Binaries:
      Node: 12.16.2 - C:\Program Files\nodejs\node.EXE
      Yarn: 1.22.0 - C:\Program Files (x86)\Yarn\bin\yarn.CMD

1 Ответ

0 голосов
/ 26 апреля 2020

Проблема возникает из-за того, что код expo-cli предполагает, что /bin/cp завершается (нашел его благодаря https://github.com/expo/expo-cli/issues/328#issuecomment -562809248 ).

Решение:

Чтобы сделать / bin / cp доступным, вы можете создать символическую ссылку c на папку bin в git bash - она ​​содержит необходимые команды. Убедитесь, что он создан на том же диске, что и проект, который вы пытаетесь скомпилировать (т. Е. Если путь к вашему выставочному проекту - D: \ projects \ expo1, создайте ссылку symboli c в D:)

  1. Установить Git для windows (https://gitforwindows.org/)
  2. Найти путь к пути установки 'Git для windows'. (например, C: \ Program Files \ Git)
  3. Открыть cmd от имени администратора
  4. Go в папке root диска, на котором находится ваш проект expo. (например, D:)
  5. Выполнить: mklink bin <git for windows path>\usr\bin (например, mklink / d bin "C: \ Program Files \ Git \ usr \ bin")

Надеюсь, это поможет кому-то там, удачи!

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