Не могу собрать проект Cordova iOS с помощью CLI, но могу собрать / запустить проект Xcode - PullRequest
0 голосов
/ 19 сентября 2018

Абсолютно новый для Кордовы.Вот шаги, которые я сделал:

  1. Извлечен существующий проект
  2. Запустите cordova build ios

Выше выдается эта ошибка сборки:

(узел: 10242) UnhandledPromiseRejectionWarning: Ошибка [ERR_UNHANDLED_ERROR]: необработанная ошибка.(Платформа «ios» не является допустимой платформой Cordova. Отсутствует API.js. IOS не поддерживается.)

Я уже погуглил для решения вышеуказанного и общегоконсенсус, похоже, заключается в том, чтобы удалить, а затем добавить платформу iOS.

Теперь есть проблема с этим.Просматривая историю коммитов, я вижу, что были сделаны изменения кода для файлов в каталоге platforms, поэтому я не могу просто удалить его или ...

Вопрос 1) Могу ли я?

Вопрос 2) Правильно ли вносить изменения в код в каталоге platforms?Потому что кажется, что это сгенерированные каталоги.

Вопрос 3) Почему, когда я открываю проект Xcode в platforms/ios, я могу нормально его собрать / запустить, несмотря наCordova CLI ошибка выше?

1 Ответ

0 голосов
/ 20 сентября 2018

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

от root www до platforms/ios, передаваемого командами cordova, такими как us cordova prepare ios или cordova build ios или cordova run ios.

Поэтому, если вы не можете сделать cordova prepare ios из-за этой ошибки, вы можете попробовать несколько вещей.

  1. Скопируйте ваши файлы из www вplatforms/ios без замены всей папки, только дубликаты файлов.cordova prepare ios это не просто копия, он также выполняет некоторые изменения / добавления, но если вы не удалите существующие файлы, это может сработать.

  2. Создайте новый проект и скопируйте platforms/ios/cordova для вашего собственного проекта и посмотрите, устраняет ли это упомянутую проблему, поскольку именно здесь находится файл Api.js.

  3. Понизьте CLI Cordova, попробуйте последнюю версию 7.xx и, еслион не работает, попробуйте последнюю версию 6.xx, для одной из них не потребуется файл Api.js, поскольку он относительно новый.

...