我正在使用Xcode开发一个项目,并尝试通过Swift Package Manager安装和使用CryptoSwift软件包。
我在SPM上阅读了documentation,但我没有看到如何通过Xcode调用SPM的说明。
示例通常指的是调用$ swift build
。这是否意味着只能从命令行访问SPM?
如果是这样,我应该在哪里创建Package.swift
文件?
我对Xcode非常熟悉,但我不太了解项目构建设置部分的含义,或者如何使用Swift模块。
如果需要更多上下文,this是我在Xcode工作的项目。
编辑:这个问题最初是针对Swift 2.1.1附带的Xcode 7.2提出的。很乐意接受解释如何使用Xcode的当前/未来版本执行此操作的答案。
答案 0 :(得分:17)
Swift Package Manager现在支持使用
生成Xcode项目swift package generate-xcodeproj
如this answer中所述,但这只适用于开发库或命令行工具。 Not (yet) for (iOS/OS X) graphical application developer:
请注意,此时程序包管理器不支持iOS,watchOS或tvOS平台。
注意:
答案 1 :(得分:13)
目前,要使用Swift Package Manager(即SPM),您需要安装Apple here提供的Swift 2.2的开发版本。 Xcode 7.2随Swift 2.1.1一起提供,除非安装了Swift 2.2-dev,否则不能与SPM一起使用。
您可以使用Swift 2.2-dev进行编译,但您需要使用swift build
在命令行上构建CryptoSwift。构建库和模块映射后,可以使用Finder将它们拖放到Xcode 7.2中。 SPM将所需文件放入.build
目录。但Xcode 7.2需要使用备用工具链启动。这可以使用xcrun launch-with-toolchain /Library/Developer/Toolchains/swift-latest.xctoolchain
从命令行完成。您应该可以从使用SPM构建的模块/库中import
。
但请注意,在使用2.2 开发版本构建的时刻,您无法将iOS应用程序提交到商店。你可以毫无问题地构建/运行/测试一些东西,虽然Playgrounds不起作用,并且调试器可能存在Xcode问题。
答案 2 :(得分:0)
2019年6月4日更新。 Swift 5和SPM 5添加了此支持,并且Xcode 11与SPM集成。