我正在尝试创建和分发框架,并使框架模块化。但是,我无法将主模块分离为子模块。
例如,我有一个名为“ MyFramework”的框架,它在A.swift和B.swift中分别有两个单独的类。我想访问“ import MyFramework.A”和“ import MyFramework.B”之类的模块。 (就像HomeKit,它具有HomeKit.HMHomeManager子模块,依此类推。)
我意识到我可以通过提供一个自定义的模块映射来实现。创建它时,我无法为子模块提供必要的功能。据我所知,子模块采用头文件来显示必要的信息。但是,swift文件没有任何头,并且我无法提供modulemap任何头。
基本上,我希望子模块只包含特定信息。
modulemap示例:
framework module MyFramework {
module A {
// This module should have only the A.swift file's functionality.
}
module B {
// This module should have only the B.swift file's functionality.
}
}
使用上面的模块图,A和B.swift文件的所有功能都显示在“ MyFramework”中,但是当我导入MyFramework.A(或B)并对其进行导航时,MyFramework.A模块内部为空。简而言之,我想要MyFramework.A中的A.swift功能。
我搜索了相关主题,但是唯一看到的是我可以将Obj-C标头提供到模块中,但是我的项目中没有任何Objective-c文件。
您知道在不共享源代码的情况下如何分发模块化框架吗?
谢谢。