Песочница не синхронизирована с Podfile.lock-ios
У меня возникли следующие ошибки после нескольких ответов из Google.
PhaseScriptExecution Check\ Pods\ Manifest.lock /Users/apple/Library/Developer/Xcode/DerivedData/Build/Intermediates/FoodSpot.build/Debug-
iphonesimulator/FoodSpotTests.build/Script-36819C3C1B6A30F50091382D.sh
cd "/Users/apple/Downloads/FoodSpot 2"
/bin/sh -c /Users/apple/Library/Developer/Xcode/DerivedData/Build/Intermediates/FoodSpot.build/Debug-iphonesimulator/FoodSpotTests.build/Script-36819C3C1B6A30F50091382D.sh
diff: /../Podfile.lock: No such file or directory
diff: /Manifest.lock: No such file or directory
error: The sandbox is not in sync with the Podfile.lock.
Run 'pod install' or update your CocoaPods installation.
Я обновил и установил много раз, но они бесполезны.
Ответы
Ответ 1
Запустите "pod install" или обновите установку CocoaPods.
У вас есть ответ в самой ошибке!
В сообщении об ошибке говорится, что вы должны обновить установку CocoaPods.
Вы можете удалить libPods из фреймворков и библиотек и обновить Cocoapods с помощью pod install
.
Также:
очистить и построить проект
ТАК ссылки:
Ошибки CocoaPods при сборке проекта
Ошибка: "Песочница не синхронизирована с Podfile.lock..." после установки RestKit с cocoapods
Ответ 2
Для меня это работает после следующего:
pod deintegrate --verbose
pod install --verbose
Ответ 3
Для меня причина была в неправильных пользовательских переменных в настройках сборки!
Рассматривая проблему, фазы сборки пытаются разграничить 2 файла.
diff "${PODS_PODFILE_DIR_PATH}/Podfile.lock" "${PODS_ROOT}/Manifest.lock" > /dev/null
Просто из-за отсутствия переменных PODS_PODFILE_DIR_PATH и PODS_ROOT, они воспринимаются как "", поэтому $ {PODS_PODFILE_DIR_PATH}/Podfile.lock указывает на /Podfile.lock и то же самое для другой.
Так что это не в
diff/Podfile.lock and/Manifest.lock
Я исправил это, добавив 2 пользовательские настройки в настройки сборки
PODS_ROOT = ${SRCROOT}/Pods
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
После нескольких часов поиска это единственное решение, которое сработало для меня
Ответ 4
Удаление полученных данных сделало трюк для меня. Я удалился, заглянув в поисковик.
Ответ 5
Внесите изменения в подфайл, как показано ниже:
Старый файл подкачки
target: TargetName,: exclusive = > true do
Измененный файл подкачки
target 'TargetName' do
Ответ 6
Просто перейдите к этапам сборки и нажмите [CP], проверьте Pods Manifest.lock.
diff "${PODS_PODFILE_DIR_PATH}/Podfile.lock" "${PODS_ROOT}/Manifest.lock" > /dev/null
И PODS_PODFILE_DIR_PATH, и POD_ROOT должны быть определены пользователем в настройках сборки. POD_ROOT должен иметь правильный путь к файлу Manifext.lock, а POD_PODFILE_DIR_PATH должен иметь правильный путь для Podfile.lock
Так что добавьте ниже в настройках сборки.
PODS_ROOT ---- ${SRCROOT}/Pods
PODS_PODFILE_DIR_PATH ---- ${SRCROOT}
Ответ 7
Проблема заключается в том, что Podfile.lock и Manifest.lock не могут быть найдены с помощью сценария Check Pods Manifest.lock на этапе создания ваших целей.
![enter image description here]()
Обычно это вызвано тем, что переменные PODS_PODFILE_DIR_PATH и PODS_ROOT не определены.
Перейдите на вкладку настроек сборки, чтобы определить их.
![enter image description here]()
Вам нужно будет найти Podfile.lock и Manifest.lock в вашем проекте и получить полный путь к их каталогам. Пути к каталогам будут значения, которые вы используете для PODS_PODFILE_DIR_PATH и PODS_ROOT.
Ответ 8
Я искал часы, и я нашел следующие решения:
В моем случае метод 3 работает.
Способ 1:
- выберите цель> перейдите к Фраза сборки > нажмите ссылку Бинарные с библиотеками > удалить все файлы libPods.a
-
откройте терминал> прямо к вашему проекту> запустите:
pod install
-
очистить и построить проект
Ссылку 1
Способ 2:
-
откройте терминал> прямо к вашему проекту> запустите:
pod deintegrate --verbose
pod install --verbose
задания 2
Способ 3:
- выберите цель> перейдите в настройки сборки > нажмите знак "+"
-
добавить 2 пользовательские настройки: [слева = справа]
PODS_ROOT = ${SRCROOT}/Pods
а также
PODS_PODFILE_DIR_PATH = ${SRCROOT}/
Ref.3
Ответ 9
Обязательно добавьте шаг сборки командной строки "pod install" перед шагом Xcode Project
.
Ошибка возникает из этапа сборки сборки script в целевой цели проекта Xcode, который не может найти Podfile.lock. Этот файл создается CocoaPods, который должен быть установлен на этапе сборки в проекте TeamCity.
Мои шаги сборки выглядят следующим образом:
- Командная строка:
bundle install --path .bundle
(устанавливает локальные для cocoapods проекты с помощью Gemfile
).
- Командная строка:
bundle exec pod install --verbose
(использует Podfile
)
- Командная строка:
carthage update --platform iOS
(использует Cartfile
)
- Проект Xcode
- Командная строка для создания архива
- Командная строка для загрузки сборки
Надеюсь, что это поможет.
Ответ 10
Я уверен, что вы открыли рабочее пространство ваших проектов, в котором вы пытаетесь установить новые модули. Поэтому попробуйте следующее (для меня это сработало):
- Очистить проект
- Закрыть проект
- Запустить
pod install
- Откройте проект и попробуйте восстановить его еще раз
Возможно, проблема была решена.
Ответ 11
В моем случае я получил ту же ошибку после интеграции других целей. Для решения проблемы мне нужно было добавить обе цели в Podfile:
abstract_target 'myApp' do
use_frameworks!
pod 'Alamofire', '~> 3.0'
pod 'SwiftyJSON'
target 'myAppOtherTarget'
end
Ответ 12
В моем случае ошибки возникали на цели _Tests. Мне не нужна цель _Tests, и я удалил ее. Это устранило ошибку.
Ответ 13
Это происходит, если cocoa pods не устанавливаются и не удаляются должным образом
Если вы хотите установить cocoa pods run
pod install
если вы хотите удалить cocoa pods, тогда выполните команду
pod deintegrate
Ответ 14
У меня была такая же проблема. Оказалось, что версия cocoapods на Manifest.lock была выше, чем у меня на моем mac. Я должен был сделать "cooapods" sudo gem install, чтобы получить версию cocoapods до того, что было указано в файле Manifest.lock. Это устранило проблему, и у меня не было ошибок при создании проекта.
Ответ 15
Теперь я сталкиваюсь с той же проблемой и исправлена с помощью этой команды после перехода к местоположению проекта в терминале.
pod install --repo-update
Ответ 16
Если вам удастся переместить ваш подфайл, как и я, и решить эту проблему, решение, обсуждаемое ниже, может помочь -
- Удалить все из следующих: папка Pods, xcworkspace
file, podlock file (пропустить те, которые недоступны для подпапок)
- удалите все шаги, которые имеют [cp] в нем со вкладки фазы сборки
- повторите шаги 1 и 2 для всех подпроектов, которые у вас есть в вашей рабочей области.
- открыть рабочее пространство, перейти в каждый проект и удалить фреймворк для контейнеров и удалить папку с папками из каждого проекта
- закрыть рабочую область
- запустить pod install
теперь вы сможете открывать, создавать и запускать проект
Ответ 17
Я исправил это, добавив 2 пользовательские настройки в настройки сборки
PODS_ROOT = ${SRCROOT}/Pods
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
Ответ 18
Я просто исправил это, обновив Cocoapod, потому что перед ошибкой был журнал, в котором предупреждение показывает, что мы должны обновить наши cocoapods, так как файлы pod не поддерживаются текущей версией cocoapod, поэтому очистите проект, обновите cocoapod, а затем установите pod.
1. Clean project
2. sudo gem install cocoapods/gem install cocoapods
3. pod install (optional if your project still shows error)
Примечание. Я обнаружил эту ошибку для своего приложения-флаттера на платформе iOS