我正在使用 Swift 开发服务器并使用 Swift 包管理器。并且发现在我的 Mac OS 系统上进行开发时生成一个 Xcode 项目以使用 Xcode 作为我的 IDE 很方便(即,有时,我的包依赖项必须更新。我一直在使用 swift package generate-xcodeproj
来执行此操作。此时我的问题出现了——我在 Xcode 中创建了一些设置。例如,我设置了一个 DEBUG 标志,并且我有一个 .plist 文件位于 Copy文件阶段。当我重新生成 Xcode 项目时,这些文件丢失了。看来我不能简单地使用 swift package update
,因为有时文件在依赖项中发生变化,而这些文件不会传播到 Xcode 项目。
我想要的是一种在 Xcode 外部的文件中单独建立 Xcode 设置的方法,当我执行 swift package generate-xcodeproj
时,可以将其导入 Xcode。我还没有找到执行此操作的方法。
一个相关的问题是:当我进行 swift build
时,我希望使用相同的build设置。
建议?
最佳答案
我无法帮助复制文件阶段
。
但是我一直在玩弄条件编译,就像这样:
swift package generate-xcodeproj --xcconfig-overrides Sandbox.xcconfig
沙箱.xcconfig
FLAG_SANDBOX = -DSANDBOX
OTHER_SWIFT_FLAGS = $(FLAG_SANDBOX)
这将创建一个 Xcode 项目,其中定义了 SANDBOX
。
这可以在像这样的快速代码中使用
#if SANDBOX
print("sandbox")
#else
print("production")
#endif
关于Swift 包管理器和 Xcode : Retaining Xcode Settings?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41527782/