我刚刚创建了一个新的 Objective-C 库,并且正在尝试添加对 Swift Package Manager 的支持。

图书馆本身非常基础。它具有以下源结构。

ProjectName/ProjectName.h
ProjectName/ProjectName.m
ProjectName/Private/ProjectNameInternal.h
ProjectName/Private/ProjectNameInternal.m

公共(public)源文件导入私有(private)头,私有(private)源文件导入公共(public)头。当我制作了一个基本的 Package.swift 并尝试构建它时,它给了我一个错误,即私有(private) header 无法看到公共(public) header 。

有没有一种特殊的方式我应该声明所有这些 Objective-C 头文件?

( This is the library in question 如果有帮助。)

ios - 创建新的 Swift 包 - 未找到 header-LMLPHP

最佳答案

我认为您需要通过 cSettings 专门添加到您的标题搜索路径。前任:

.target(
    ...
    cSettings: [
    .headerSearchPath("ProjectName"),
    .headerSearchPath("ProjectName/Private"),
    ]
)

关于ios - 创建新的 Swift 包 - 未找到 header ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57950089/

10-10 17:22