Xcode 13如何使用本地Swift包(Swift Package)

4,576 阅读2分钟

概述

我们知道Xcode可以随心所欲的引用Apple自己或第三方的Swift包,但大多数情况下这些包都处于网上的github仓库中。

如果因网络原因导致github网站访问不稳定,那么Xcode就无法正常抓取该Package的内容。

有时候,虽然github可以通过浏览器访问,但Xcode抓取其中Swift包内容时仍会发生访问失败的情况。

那么,此时我们如何使用对应的Swift包呢?

答案是:使用本地Swift Package!

本篇博文中,您将了解到Xcode 13如何访问并使用本地Swift包,十分简单!

Let's Go! ;)

在这里插入图片描述

第一步:下载Swift Package

首先,需要将github或其它git仓库中的包下载到本地,如果你有信赖的码农好基友,你也可以直接向他们索要。

在这里插入图片描述

如上图所示,请确认Swift包目录中包含Package.swift文件,否则这可能完全不是一个Swift包。

上面是我趁github不抽风的时候偷偷下载的Swift包:SwiftSoup。该包的地址为:

因为多次使用Xcode包管理器(SPM)连接该地址却不可得,所以只有手动从github中下载它。

第二步:将Swift包导入Xcode

打开Xcode中的包管理器,点击下方的 Add Local... 按钮

在这里插入图片描述

在弹出窗口界面中选择你刚才下载的包目录,注意不要进入到包目录的内部,直接选择包目录本身即可:

在这里插入图片描述

之后,你会发现Swift包在你的Xcode项目中已经可见了:

在这里插入图片描述

但此时你仍然无法使用它!你在源代码文件中引用它的后果就是,该库无法被找到:

在这里插入图片描述

所以,还缺最后一步!

3. 加载Swift Package到项目中

因为该Swift包是从本地而不是远程github仓库加载,所以我们不能回到Xcode的SPM中载入该库,而是需要在项目目标(TARGETS)的Frameworks,Libraries and Embedded Content 标签中嵌入该包:

在这里插入图片描述

点击上图中的小加号,然后在弹出窗口中选择之前引入项目的包:

在这里插入图片描述

将其添加到项目中后,在代码中引用该库,然后再次编译,你会发现Xcode清净了,整个世界也清净了!8-)

总结

本篇博文介绍了如何使用本地Swift包,非常简单。

至此,相信大家对于如何在Xcode项目中加载本地Swift Package已经了然于胸了吧?

希望本篇博文能让小伙伴们少走些弯路!

感谢观赏,再会!;)