以编程方式将源代码添加到Xcode目标

9

我正在使用protobuf从proto文件生成Swift类(我已经为此编写了脚本)。现在我需要将所有生成的文件添加到Xcode项目中的目标中。

我该如何在程序中进行此操作?也许可以在Build Phases中编写脚本,或者使用macOS中的其他一些操作(例如Automator)?

3个回答

4

可能那是一个不错的解决方案,但对我来说有点过于复杂了。我的意思是在 iOS 项目中引入 Ruby gem 依赖项,即使它不使用 CocoaPods(因为使用 Carthage)。更简单的方法是改进项目的 README,明确如何手动添加文件。 - romanilchyshyn

2
可以使用Xcode中内置的功能来实现(我们已经使用了C++,但是也应该可以使用Swift):
在您的目标中,添加一个与您的proto文件扩展名匹配的自定义shell脚本构建规则。
使用"${INPUT_FILE_PATH}""${SCRIPT_OUTPUT_FILE_0}"调用您的脚本。
如果输出文件的扩展名与其他构建规则匹配,则将执行另一个构建规则。因此,在您的情况下,将构建规则的输出文件设置为${DERIVED_FILE_DIR}/${INPUT_FILE_BASE}.swift,以将其发送到Swift编译器。
现在进入您的目标的Compile Sources构建阶段并添加proto文件即可。

0

您可以通过 Xcode 的“构建规则”来实现此操作。

请查看此项目,它利用“构建规则”从 protobuf 生成源代码文件并将其添加到项目中。

https://github.com/microsoft/plcrashreporter


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接