【问题标题】:Import another package along with a SPM Library与 SPM 库一起导入另一个包
【发布时间】:2020-12-10 11:41:31
【问题描述】:

想象一下当您的 App 项目使用两个自定义库时的这种情况

.xcworkspace
|- App.xcodeproj
|- LibraryA.xcodeproj
|- LibraryB.xcodeproj

由于在这种情况下我们正在使用 Xcode 框架,因此可以将以下内容添加到 LibraryB 头文件中:

#import <LibraryA/MyLibraryA.h>

现在不仅不需要在源文件LibraryB 中导入LibraryA,而且每次在App 源文件中导入LibraryB 时,LibraryA 也会随之导入,可以很方便。

这同样适用于可以在 Xcode 框架标头中找到的默认 Foundation 导入:

#import <Foundation/Foundation.h>

现在有了 SPM,我需要在任何使用它的地方手动导入 Foundation。

问:如果只使用 SPM 包,是否可以达到同样的效果?

我还没有找到关于这个问题的任何资源。谢谢!

【问题讨论】:

    标签: swift xcode swift-package-manager


    【解决方案1】:

    要向整个包公开导入,您可以在任何 swift 文件中使用 @_exported 属性:

    @_exported import Foundation
    

    在下一次讨论中了解更多信息:https://forums.swift.org/t/package-manager-exported-dependencies/11615

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-11-08
      • 2020-02-24
      • 1970-01-01
      • 2016-01-27
      • 2018-12-24
      • 2012-11-29
      相关资源
      最近更新 更多