Несколько дочерних проектов, построенных как модули под одним модулем - PullRequest
1 голос
/ 04 июля 2019

Рассмотрим многослойный проект, в котором каждый слой построен в виде каркаса и имеет собственный файл podspec. Верхние слои зависят от нижних слоев, поэтому верхнему слою придется импортировать нижний «Модуль». У меня есть потребительское приложение, которое использует эти фреймворки, поэтому файл pod будет выглядеть примерно так:

pod 'FirstFramework', :path => ''
pod 'SecondFramework', :path => ''
pod 'ThirdFramework', :path => ''

То, что я хотел бы сделать, - это организовать многоуровневый проект под одним модулем, чтобы приложение-потребитель просто вызывало pod 'AllFrameworks',: path => ''. За кулисами каждый слой будет по-прежнему создаваться как отдельная структура со всеми их зависимостями и отправляться в одном пакете в потребительское приложение. Есть ли способ, которым я могу достичь этого?

1 Ответ

0 голосов
/ 04 июля 2019

Если я правильно понимаю, думаю, что то, что вы ищете, называется Pod SubSpec. Я работал над проектом, который был похож на то, что вы описали, и это то, что мы придумали.

у вас будет MyFramework как «сделка в целом», а затем

MyFramework/First
MyFramework/Second
MyFramework/Third

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

Будучи MyFramework, «основным» модулем, но при этом сохраняя возможность других проектов включать только его часть. Например, LayerModuleA является зависимостью от вашего consumerApp и использует MyFramework/First, находится в другом репо и может быть построен как отдельный модуль и имеет собственный пример приложения

ConsumerApp / Podfile

pod 'MyFramework'
pod 'LayerModuleA'
pod 'LayerModuleB'
pod 'LayerModuleC'

LayerModuleA / Пример / Podfile

pod 'MyFramework/First'

LayerModuleB / Пример / Podfile

pod 'MyFramework/Second'

LayerModuleC / Пример / Podfile

pod 'MyFramework/Third'

Это то, чего вы хотите достичь? Если это так, вам следует взглянуть на документацию Cocoapods в разделе подспец .

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