Я хочу управлять проектами в рабочих пространствах, используя Xcode 4 с проектами Cocoa Touch Static Library, которые содержат общий код, на который я мог ссылаться из других проектов.В соответствии с видео WWDC 2010 и документацией по Xcode 4, есть функция «неявных зависимостей» для рабочих пространств в Xcode 4. Я пытался заставить это работать, и у меня не было большого успеха.
Пример рабочей области: DependenciesInXcode4.zip
Вы видите, что в самом простом примере проекта есть 2 статических проекта библиотеки, которые я назвал Library1 и Library2.Затем у меня есть отдельный класс в каждом проекте, на который я ссылаюсь из проекта iPhone под названием PrimaryApp.Я получаю поддержку Code Sense при добавлении оператора импорта, но сборка завершается неудачей.
Вы можете увидеть, как сборка завершается неудачно, поскольку она не может найти зависимости.
Для решения этих проблем я добавил вручную связанные проекты Library1 и Library2.
Мне также пришлось добавить путь к этим проектам какПути поиска в заголовке.
Теперь, когда я собираю обе библиотеки зависимостей, а затем запускаю PrimaryApp в симуляторе iPhone, он успешно создается и работает.Я обнаружил, что это не всегда гарантирует, что проекты зависимостей создаются при необходимости, и это явно ручной процесс.Это не то, что я считаю "неявными зависимостями", поскольку видео и документация XCode подразумевают, что это должно работать.Я искал более конкретные примеры, но пока мне не повезло.Даже здесь, в Stackoverflow, я пока не вижу удовлетворительного ответа.
Похоже, что разработчики прибегают к старым методам и не используют по-настоящему новые функции "неявных зависимостей".
Буду признателен за помощь в понимании того, как заставить «неявные зависимости» работать с рабочими пространствами в Xcode 4.
Вот мои вопросы:
- Как дела?неявные зависимости "должны работать в Xcode 4 с рабочими пространствами?
- Почему код в Libary1 и Library2 не может быть автоматически найден в PrimaryApp?
- Требуются ли дополнительные изменения для работы зависимостей в рабочей области?