Я работаю над проектом Xcode, который подключается к GraphQL API. Для этого я использую Фреймворк Apollo.
В своем проекте я установил cocoapod, который включает фреймворк Apollo, а затем добавил следующий сценарий запуска в Xcode:
if which apollo-codegen >/dev/null; then
APOLLO_FRAMEWORK_PATH = "$(eval find $FRAMEWORK_SEARCH_PATHS -name "Apollo.framework" -maxdepth 1)"
if [ -z "$APOLLO_FRAMEWORK_PATH" ]; then
echo "warning: Couldn't find Apollo.framework in FRAMEWORK_SEARCH_PATHS; make sure to add the framework to your project."
exit 0
fi
cd "${SRCROOT}/${TARGET_NAME}/GraphQL"
$APOLLO_FRAMEWORK_PATH/check-and-run-apollo-codegen.sh generate \
$(find . -name '*.graphql') \
--schema schema.json \
--output Generated/GraphQLAPI.swift
else
echo "Skipping Apollo code generation"
fi
Вот как это выглядит в Xcode:
Моя структура каталогов в Xcode выглядит так:
Затем я запускаю следующую команду из Терминала:
npm install -g apollo-codegen
Когда я затем пытаюсь создать свой проект Xcode, я, к сожалению, получаю следующую ошибку сборки:
/Users/JohnDoe/Library/Developer/Xcode/DerivedData/The_Game-dfpiqreyqdjocaawjrfwhrxhdosf/Build/Intermediates.noindex/The Game.build/Debug-iphonesimulator/The Game Users.build/FF3-7AD71AIN: строка 12ADS851A /JohnDoe/Library/Developer/Xcode/DerivedData/The_Game-dfpiqreyqdjocaawjrfwhrxhdosf/Build/Products/Debug-iphonesimulator/Apollo/Apollo.framework/check-and-run-apollo, такой файл или каталог:
Честно говоря, понятия не имею, зачем мне эта область. Кто-нибудь может понять, почему?





Сценарий сборки был изменен в последних версиях apollo ios, потому что apollo-codegen теперь является частью нового apollo cli. вместо этого он должен ссылаться на check-and-run-apollo-cli.sh.
Также убедитесь, что вы используете последнюю версию apollo (в настоящее время 0.9.2), указав версию в своем подфайле. Вам также может потребоваться обновить репозиторий пакетов, запустив pod repo update.